Evm_node_lib_dev.Rpc_encodings
module JSONRPC : sig ... end
Encodings for the JSON-RPC standard. See https://www.jsonrpc.org/specification.
module Subscription : sig ... end
module type METHOD = sig ... end
API of an Ethereum method.
module Kernel_version : METHOD with type input = unit and type output = string
module Kernel_root_hash :
METHOD with type input = unit and type output = string option
module Network_id : METHOD with type input = unit and type output = string
module Chain_id :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.L2_types.chain_id
module Chain_family :
METHOD
with type input = Evm_node_lib_dev_encoding.L2_types.chain_id
and type output = Evm_node_lib_dev_encoding.L2_types.ex_chain_family
module Accounts :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.Ethereum_types.address list
module Generic_block_number :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.Ethereum_types.quantity
module Block_number :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.Ethereum_types.quantity
module Get_block_by_number :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.Block_parameter.t * bool
and type output =
Transaction_object.t Evm_node_lib_dev_encoding.Ethereum_types.block
module Get_block_by_hash :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.block_hash * bool
and type output =
Transaction_object.t Evm_node_lib_dev_encoding.Ethereum_types.block
module Get_block_receipts :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.Block_parameter.t
and type output = Evm_node_lib_dev_encoding.Transaction_receipt.t list
module Gas_price :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.Ethereum_types.quantity
module Get_uncle_count_by_block_hash :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.block_hash
and type output = Evm_node_lib_dev_encoding.Ethereum_types.quantity
module Get_transaction_receipt :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.hash
and type output = Evm_node_lib_dev_encoding.Transaction_receipt.t option
type gas_info = {
execution_gas : Evm_node_lib_dev_encoding.Ethereum_types.quantity;
inclusion_gas : Evm_node_lib_dev_encoding.Ethereum_types.quantity;
}
module Get_transaction_gas_info :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.hash
and type output = gas_info option
module Get_transaction_by_hash :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.hash
and type output = Transaction_object.t option
module Get_transaction_by_block_hash_and_index :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.block_hash
* Evm_node_lib_dev_encoding.Ethereum_types.quantity
and type output = Transaction_object.t option
module Get_transaction_by_block_number_and_index :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.Block_parameter.t
* Evm_node_lib_dev_encoding.Ethereum_types.quantity
and type output = Transaction_object.t option
module Send_raw_transaction :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.hex
and type output = Evm_node_lib_dev_encoding.Ethereum_types.hash
module Txpool_content :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.Ethereum_types.txpool
module Web3_clientVersion :
METHOD with type input = unit and type output = string
module Web3_sha3 :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.hex
and type output = Evm_node_lib_dev_encoding.Ethereum_types.hash
module Get_logs :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.Filter.t
and type output =
Evm_node_lib_dev_encoding.Ethereum_types.Filter.changes list
type produce_block_input = {
timestamp : Tezos_base.TzPervasives.Time.Protocol.t option;
with_delayed_transactions : bool;
}
module Produce_block :
METHOD
with type input = produce_block_input
and type output = Evm_node_lib_dev_encoding.Ethereum_types.quantity
module Produce_proposal :
METHOD
with type input = Tezos_base.TzPervasives.Time.Protocol.t
and type output = unit
module Inject_transaction :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.legacy_transaction_object
* string
and type output = Evm_node_lib_dev_encoding.Ethereum_types.hash
module Inject_tezlink_operation :
METHOD
with type input = Evm_node_lib_dev_tezlink.Tezos_types.Operation.t * bytes
and type output = Evm_node_lib_dev_encoding.Ethereum_types.hash
module Durable_state_value :
METHOD
with type input =
Durable_storage_path.path
* Evm_node_lib_dev_encoding.Ethereum_types.Block_parameter.extended
and type output = Tezos_base.TzPervasives.Bytes.t option
module Durable_state_subkeys :
METHOD
with type input =
Durable_storage_path.path
* Evm_node_lib_dev_encoding.Ethereum_types.Block_parameter.extended
and type output = string list
module Eth_max_priority_fee_per_gas :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.Ethereum_types.quantity
module Trace_transaction :
METHOD
with type input = Evm_node_lib_dev_encoding.Tracer_types.input
and type output = Evm_node_lib_dev_encoding.Tracer_types.output
module Trace_call :
METHOD
with type input = Evm_node_lib_dev_encoding.Tracer_types.call_input
and type output = Evm_node_lib_dev_encoding.Tracer_types.output
module Trace_block :
METHOD
with type input = Evm_node_lib_dev_encoding.Tracer_types.block_input
and type output = Evm_node_lib_dev_encoding.Tracer_types.block_output
module Eth_fee_history :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.quantity
* Evm_node_lib_dev_encoding.Ethereum_types.Block_parameter.t
* Stdlib.Float.t list
and type output = Evm_node_lib_dev_encoding.Fee_history.t
module Coinbase :
METHOD
with type input = unit
and type output = Evm_node_lib_dev_encoding.Ethereum_types.address
module Subscribe :
METHOD
with type input =
Evm_node_lib_dev_encoding.Ethereum_types.Subscription.kind
and type output = Evm_node_lib_dev_encoding.Ethereum_types.Subscription.id
module Unsubscribe :
METHOD
with type input = Evm_node_lib_dev_encoding.Ethereum_types.Subscription.id
and type output = bool
type l1_block_l2_levels = {
start_l2_level : Evm_node_lib_dev_encoding.Ethereum_types.quantity;
end_l2_level : Evm_node_lib_dev_encoding.Ethereum_types.quantity;
}
module Get_finalized_blocks_of_l1_level :
METHOD with type input = int32 and type output = l1_block_l2_levels
type map_result =
| Method : ('input, 'output) method_
* (module METHOD
with type input = 'input
and type output = 'output) -> map_result
| Unsupported
| Unknown
| Disabled
val map_method_name :
rpc_server_family:_ Rpc_types.rpc_server_family ->
restrict:Evm_node_config.Configuration.restricted_rpcs ->
string ->
map_result
type websocket_subscription = {
id : Evm_node_lib_dev_encoding.Ethereum_types.Subscription.id;
stream : Subscription.notification Lwt_stream.t;
stopper : unit -> unit;
}
type websocket_response = {
response : JSONRPC.response;
subscription : websocket_subscription option;
}
type websocket_handler = JSONRPC.request -> websocket_response Lwt.t