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
module Etherlink : Etherlink_backend_sig.S
module Tracer_etherlink : Tracer_sig.S
val block_param_to_block_number :
chain_family:_ Evm_node_lib_dev_encoding.L2_types.chain_family ->
Evm_node_lib_dev_encoding.Ethereum_types.Block_parameter.extended ->
Evm_node_lib_dev_encoding.Ethereum_types.quantity
Tezos_base.TzPervasives.tzresult
Lwt.t
val current_block_number :
root:string ->
Evm_node_lib_dev_encoding.Ethereum_types.quantity
Tezos_base.TzPervasives.tzresult
Lwt.t
current_block_number ~root
returns the current block number of the L2 chain prefixed by root
(depending on the chain_family in the configuration)
val chain_id :
unit ->
Evm_node_lib_dev_encoding.L2_types.chain_id Tezos_base.TzPervasives.tzresult
Lwt.t
chain_id ()
returns chain id defined by the rollup.
val chain_family :
Evm_node_lib_dev_encoding.L2_types.chain_id ->
Evm_node_lib_dev_encoding.L2_types.ex_chain_family
Tezos_base.TzPervasives.tzresult
Lwt.t
chain_family chain_id
returns chain family defined for the chain with id chain_id.
val single_chain_id_and_family :
config:Evm_node_config.Configuration.t ->
enable_multichain:bool ->
(Evm_node_lib_dev_encoding.L2_types.chain_id option
* Evm_node_lib_dev_encoding.L2_types.ex_chain_family)
Tezos_base.TzPervasives.tzresult
Lwt.t
single_chain_id_and_family
should only be called if the node is expected to follow a single chain. It compares the configuration of the node and the one of the kernel regarding the chain id and chain family.
If the multichain feature is disabled in both the kernel and the node, the default value (None, EVM)
is returned.
If the multichain feature is enabled in the kernel, check that it is also enabled in the node, that the node is configured to follow exactly one of the chains, that its chain id is among the configured ones in the kernel, and that the chain families for this chain agree in the node and the kernel.
If the multichain feature is disabled in the kernel but enabled in the node, a warning is emmitted, the configured chain family is ignored and the returned chain family is the default EVM
.
val storage_version : unit -> int Tezos_base.TzPervasives.tzresult Lwt.t
storage_version ()
returns the latest storage version known to the current kernel. This can be used to determine which features are and are not supported.
val kernel_version : unit -> string Tezos_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 Tezos_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 is_multichain_enabled : unit -> bool Tezos_base.TzPervasives.tzresult Lwt.t
val list_l1_l2_levels :
from_l1_level:int32 ->
(int32 * Evm_store.L1_l2_finalized_levels.t) list
Tezos_base.TzPervasives.tzresult
Lwt.t
val l2_levels_of_l1_level :
int32 ->
Evm_store.L1_l2_finalized_levels.t option Tezos_base.TzPervasives.tzresult
Lwt.t