TARAXA
Loading...
Searching...
No Matches
receipt.hpp
Go to the documentation of this file.
1#pragma once
2
4#include "common/types.hpp"
5
6namespace taraxa {
7
9using LogBlooms = std::vector<LogBloom>;
10
11struct LogEntry {
12 Address address;
13 h256s topics;
15
17
18 LogBloom bloom() const;
19};
20
21using LogEntries = std::vector<LogEntry>;
22
24 uint8_t status_code = 0;
25 uint64_t gas_used = 0;
26 uint64_t cumulative_gas_used = 0;
28 std::optional<Address> new_contract_address;
29
31
32 LogBloom bloom() const;
33};
34
35using TransactionReceipts = std::vector<TransactionReceipt>;
36
39 uint32_t position = 0;
40 bool is_system = false;
41
44 auto it = rlp.begin();
45 res.period = (*it++).toInt<PbftPeriod>();
46 res.position = (*it++).toInt<uint32_t>();
47 if (rlp.itemCount() == 3) {
48 res.is_system = (*it++).toInt<bool>();
49 }
50 return res;
51 }
52};
53
54using SharedTransactionReceipts = std::shared_ptr<std::vector<TransactionReceipt>>;
55
56} // namespace taraxa
Definition FixedHash.h:35
Definition RLP.h:56
#define HAS_RLP_FIELDS
Definition encoding_rlp.hpp:208
FixedHash< 256 > h2048
Definition FixedHash.h:449
Definition app.hpp:16
std::vector< LogBloom > LogBlooms
Definition receipt.hpp:9
uint64_t EthBlockNumber
Definition types.hpp:24
std::shared_ptr< std::vector< TransactionReceipt > > SharedTransactionReceipts
Definition receipt.hpp:54
std::vector< TransactionReceipt > TransactionReceipts
Definition receipt.hpp:35
std::vector< LogEntry > LogEntries
Definition receipt.hpp:21
std::vector< byte > bytes
Definition types.hpp:53
Definition receipt.hpp:11
bytes data
Definition receipt.hpp:14
HAS_RLP_FIELDS LogBloom bloom() const
Definition receipt.cpp:9
Address address
Definition receipt.hpp:12
h256s topics
Definition receipt.hpp:13
Definition receipt.hpp:37
bool is_system
Definition receipt.hpp:40
static TransactionLocation fromRlp(dev::RLP &&rlp)
Definition receipt.hpp:42
uint32_t position
Definition receipt.hpp:39
EthBlockNumber period
Definition receipt.hpp:38
Definition receipt.hpp:23
uint64_t cumulative_gas_used
Definition receipt.hpp:26
std::optional< Address > new_contract_address
Definition receipt.hpp:28
LogEntries logs
Definition receipt.hpp:27
uint8_t status_code
Definition receipt.hpp:24
HAS_RLP_FIELDS LogBloom bloom() const
Definition receipt.cpp:20
uint64_t gas_used
Definition receipt.hpp:25