Evm_node_lib_dev.Transaction_object
A transaction object value to be returned to users through the RPC server.
The EVM kernel always stores legacy transaction objects, even for transactions using a more recent format (like EIP-1559).
val encoding : t Tezos_base.TzPervasives.Data_encoding.t
val from_store_transaction_object :
Evm_node_lib_dev_encoding.Ethereum_types.legacy_transaction_object ->
t
from_store_transaction_object obj
does not attempt to reconstruct obj
to be compliant with its original format, but instead returned the stored data as if it was legacy.
val block_from_legacy :
Evm_node_lib_dev_encoding.Ethereum_types.legacy_transaction_object
Evm_node_lib_dev_encoding.Ethereum_types.block ->
t Evm_node_lib_dev_encoding.Ethereum_types.block
block_from_legacy block
folds over the transactions of block
, assuming they are indeed legacy (see from_store_transaction_object
).
val hash : t -> Evm_node_lib_dev_encoding.Ethereum_types.hash
hash t
returns the hash of the transaction
val block_number :
t ->
Evm_node_lib_dev_encoding.Ethereum_types.quantity option
block_number t
returns the block number in which the transaction was included, if available
val input : t -> Evm_node_lib_dev_encoding.Ethereum_types.hex
input t
returns the data payload of the transaction
val to_ : t -> Evm_node_lib_dev_encoding.Ethereum_types.address option
to_ t
returns the recipient address of the transaction, if available (None
for contract creation)
val reconstruct :
Blueprint_types.payload ->
Evm_node_lib_dev_encoding.Ethereum_types.legacy_transaction_object ->
t Tezos_base.TzPervasives.tzresult
reconstruct blueprint_payload obj
reconstructs the full transaction object from the raw transaction of obj
stored in blueprint_payload
.
Fails if blueprint_payload
is inconsistent (does not contain the raw transaction, is corrupted, etc.).
val reconstruct_block :
Blueprint_types.payload ->
Evm_node_lib_dev_encoding.Ethereum_types.legacy_transaction_object
Evm_node_lib_dev_encoding.Ethereum_types.block ->
t Evm_node_lib_dev_encoding.Ethereum_types.block
Tezos_base.TzPervasives.tzresult
reconstruct_block blueprint_payload block
folds over the transactions of block
to reconstruct them (see reconstruct
).
val rereconstruct :
Blueprint_types.payload ->
t ->
t Tezos_base.TzPervasives.tzresult
rereconstruct blueprint_payload obj
can be used to retry to reconstruct obj
using blueprint_payload
, exactly as reconstruct
would, in case obj
was created with from_store_transaction_object
.
rereconstruct blueprint_payload (reconstruct blueprint_payload obj)
is a no-op.rereconstruct blueprint_payload (from_store_transaction_object obj)
is equivalent to reconstruct blueprint_payload obj
val rereconstruct_block :
Blueprint_types.payload ->
t Evm_node_lib_dev_encoding.Ethereum_types.block ->
t Evm_node_lib_dev_encoding.Ethereum_types.block
Tezos_base.TzPervasives.tzresult
rereconstruct_block
can be used to retry to reconstruct a block, exactly as reconstruct_block
would, in case block
was created with block_from_legacy
.
See rereconstruct
.