TARAXA
taraxa::SystemTransaction Struct Reference

#include <system_transaction.hpp>

Collaboration diagram for taraxa::SystemTransaction:

Public Member Functions

 SystemTransaction (const trx_nonce_t &nonce, const val_t &value, const val_t &gas_price, gas_t gas, bytes data, const std::optional< addr_t > &receiver=std::nullopt, uint64_t chain_id=0)
 
 SystemTransaction (const dev::RLP &_rlp, bool verify_strict=false, const h256 &hash={})
 
 SystemTransaction (const bytes &_rlp, bool verify_strict=false, const h256 &hash={})
 
virtual const addr_tgetSender () const override
 
virtual void streamRLP (dev::RLPStream &s, bool for_signature) const override
 
virtual void fromRLP (const dev::RLP &_rlp, bool verify_strict, const h256 &hash) override
 
- Public Member Functions inherited from taraxa::Transaction
 Transaction ()
 
 Transaction (const trx_nonce_t &nonce, const val_t &value, const val_t &gas_price, gas_t gas, bytes data, const secret_t &sk, const std::optional< addr_t > &receiver=std::nullopt, uint64_t chain_id=0)
 
 Transaction (const dev::RLP &_rlp, bool verify_strict=false, const h256 &hash={})
 
 Transaction (const bytes &_rlp, bool verify_strict=false, const h256 &hash={})
 
auto isZero () const
 
const trx_hash_tgetHash () const
 
auto getNonce () const
 
const auto & getValue () const
 
const auto & getGasPrice () const
 
auto getGas () const
 
const auto & getData () const
 
const auto & getReceiver () const
 
auto getChainID () const
 
const auto & getVRS () const
 
auto getCost () const
 
bool operator== (Transaction const &other) const
 
const bytesrlp () const
 
Json::Value toJSON () const
 

Additional Inherited Members

- Protected Member Functions inherited from taraxa::Transaction
trx_hash_t hash_for_signature () const
 
addr_t const & get_sender_ () const
 
- Protected Attributes inherited from taraxa::Transaction
trx_nonce_t nonce_ = 0
 
val_t value_ = 0
 
val_t gas_price_
 
gas_t gas_ = 0
 
bytes data_
 
std::optional< addr_treceiver_
 
uint64_t chain_id_ = 0
 
dev::SignatureStruct vrs_
 
trx_hash_t hash_
 
std::atomic_bool hash_initialized_ = false
 
bool is_zero_ = false
 
std::mutex hash_mu_
 
std::atomic_bool sender_initialized_ = false
 
bool sender_valid_ = false
 
addr_t sender_
 
std::mutex sender_mu_
 
std::atomic_bool cached_rlp_set_ = false
 
bytes cached_rlp_
 
std::mutex cached_rlp_mu_
 

Constructor & Destructor Documentation

◆ SystemTransaction() [1/3]

taraxa::SystemTransaction::SystemTransaction ( const trx_nonce_t nonce,
const val_t value,
const val_t gas_price,
gas_t  gas,
bytes  data,
const std::optional< addr_t > &  receiver = std::nullopt,
uint64_t  chain_id = 0 
)

◆ SystemTransaction() [2/3]

taraxa::SystemTransaction::SystemTransaction ( const dev::RLP _rlp,
bool  verify_strict = false,
const h256 hash = {} 
)
explicit

◆ SystemTransaction() [3/3]

taraxa::SystemTransaction::SystemTransaction ( const bytes _rlp,
bool  verify_strict = false,
const h256 hash = {} 
)
explicit

Member Function Documentation

◆ fromRLP()

void taraxa::SystemTransaction::fromRLP ( const dev::RLP _rlp,
bool  verify_strict,
const h256 hash 
)
overridevirtual

Reimplemented from taraxa::Transaction.

◆ getSender()

const addr_t & taraxa::SystemTransaction::getSender ( ) const
overridevirtual

Reimplemented from taraxa::Transaction.

◆ streamRLP()

void taraxa::SystemTransaction::streamRLP ( dev::RLPStream s,
bool  for_signature 
) const
overridevirtual

Reimplemented from taraxa::Transaction.


The documentation for this struct was generated from the following files: