Rollup_node.Make
Instantiate a module of type Services_backend_sig.S
that communicates with a rollup node endpoint given by Base.base
.
module Base : sig ... end
module Reader : Durable_storage.READER
val balance :
Evm_node_lib_prod_encoding.Ethereum_types.address ->
Evm_node_lib_prod_encoding.Ethereum_types.quantity
Mavryk_base.TzPervasives.tzresult
Lwt.t
balance address
returns the address
's balance.
val nonce :
Evm_node_lib_prod_encoding.Ethereum_types.address ->
Evm_node_lib_prod_encoding.Ethereum_types.quantity option
Mavryk_base.TzPervasives.tzresult
Lwt.t
nonce address
returns the address
's nonce.
val code :
Evm_node_lib_prod_encoding.Ethereum_types.address ->
Evm_node_lib_prod_encoding.Ethereum_types.hex
Mavryk_base.TzPervasives.tzresult
Lwt.t
code address
returns the address
's code.
val inject_raw_transactions :
timestamp:Mavryk_base.TzPervasives.Time.Protocol.t ->
smart_rollup_address:string ->
transactions:string list ->
Evm_node_lib_prod_encoding.Ethereum_types.hash list
Mavryk_base.TzPervasives.tzresult
Lwt.t
inject_raw_transactions ~timestamp ~smart_rollup_address
~transactions
crafts the hashes and chunks of each transaction of transactions
. Injects the chunks and returns the hashes of injected transactions.
val current_block :
full_transaction_object:bool ->
Evm_node_lib_prod_encoding.Ethereum_types.block
Mavryk_base.TzPervasives.tzresult
Lwt.t
current_block ~full_transaction_object
returns the most recent processed and stored block.
If full_transaction_object
is true
, returns the transaction objects, the transactions hashes otherwise.
val current_block_number :
unit ->
Evm_node_lib_prod_encoding.Ethereum_types.block_height
Mavryk_base.TzPervasives.tzresult
Lwt.t
current_block_number ()
returns the most recent processed and stored block number.
val nth_block_hash :
Z.t ->
Evm_node_lib_prod_encoding.Ethereum_types.block_hash option
Mavryk_base.TzPervasives.tzresult
Lwt.t
nth_block_hash n
returns the hash of the n
th processed and stored block.
val nth_block :
full_transaction_object:bool ->
Z.t ->
Evm_node_lib_prod_encoding.Ethereum_types.block
Mavryk_base.TzPervasives.tzresult
Lwt.t
nth_block ~full_transaction_object n
returns the n
th processed and stored block.
If full_transaction_object
is true
, returns the transaction objects, the transactions hashes otherwise.
val block_by_hash :
full_transaction_object:bool ->
Evm_node_lib_prod_encoding.Ethereum_types.block_hash ->
Evm_node_lib_prod_encoding.Ethereum_types.block
Mavryk_base.TzPervasives.tzresult
Lwt.t
block_by_hash ~full_transaction_object hash
returns the block with the given hash
.
If full_transaction_object
is true
, returns the transaction objects, the transactions hashes otherwise.
val transaction_receipt :
Evm_node_lib_prod_encoding.Ethereum_types.hash ->
Evm_node_lib_prod_encoding.Ethereum_types.transaction_receipt option
Mavryk_base.TzPervasives.tzresult
Lwt.t
transaction_receipt tx_hash
returns the receipt of tx_hash
.
val transaction_object :
Evm_node_lib_prod_encoding.Ethereum_types.hash ->
Evm_node_lib_prod_encoding.Ethereum_types.transaction_object option
Mavryk_base.TzPervasives.tzresult
Lwt.t
transaction_object tx_hash
returns the informations of tx_hash
.
val chain_id :
unit ->
Evm_node_lib_prod_encoding.Ethereum_types.quantity
Mavryk_base.TzPervasives.tzresult
Lwt.t
chain_id ()
returns chain id defined by the rollup.
val base_fee_per_gas :
unit ->
Evm_node_lib_prod_encoding.Ethereum_types.quantity
Mavryk_base.TzPervasives.tzresult
Lwt.t
base_fee_per_gas ()
returns base fee defined by the rollup.
val kernel_version : unit -> string Mavryk_base.TzPervasives.tzresult Lwt.t
kernel_version ()
returns the internal kernel version (i.e the commit hash where the kernel was compiled).
val kernel_root_hash :
unit ->
string option Mavryk_base.TzPervasives.tzresult Lwt.t
kernel_root_hash ()
returns the internal kernel root hash (i.e the latest root hash that was applied during an upgrade).
val simulate_call :
Evm_node_lib_prod_encoding.Ethereum_types.call ->
Simulation.call_result Simulation.simulation_result
Mavryk_base.TzPervasives.tzresult
Lwt.t
simulate_call call_info
asks the rollup to simulate a call, and returns the result.
val estimate_gas :
Evm_node_lib_prod_encoding.Ethereum_types.call ->
Simulation.call_result Simulation.simulation_result
Mavryk_base.TzPervasives.tzresult
Lwt.t
estimate_gas call_info
asks the rollup to simulate a call, and returns the gas used to execute the call.
val is_tx_valid :
string ->
Simulation.validation_result Simulation.simulation_result
Mavryk_base.TzPervasives.tzresult
Lwt.t
is_tx_valid tx_raw
checks if the transaction is valid. Checks if the nonce is correct and returns the associated public key of transaction.
val storage_at :
Evm_node_lib_prod_encoding.Ethereum_types.address ->
Evm_node_lib_prod_encoding.Ethereum_types.quantity ->
Evm_node_lib_prod_encoding.Ethereum_types.hex
Mavryk_base.TzPervasives.tzresult
Lwt.t
storage_at address pos
returns the value at index pos
of the account address
's storage.