Trait reth_node_core::rpc::api::EngineEthApiServer

source ·
pub trait EngineEthApiServer<B>:
    Sized
    + Send
    + Sync
    + 'static
where B: RpcObject,
{ // Required methods fn syncing(&self) -> Result<SyncStatus, ErrorObject<'static>>; fn chain_id<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Option<Uint<64, 1>>, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; fn block_number(&self) -> Result<Uint<256, 4>, ErrorObject<'static>>; fn call<'life0, 'async_trait>( &'life0 self, request: TransactionRequest, block_id: Option<BlockId>, state_overrides: Option<HashMap<Address, AccountOverride>>, block_overrides: Option<Box<BlockOverrides>>, ) -> Pin<Box<dyn Future<Output = Result<Bytes, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; fn get_code<'life0, 'async_trait>( &'life0 self, address: Address, block_id: Option<BlockId>, ) -> Pin<Box<dyn Future<Output = Result<Bytes, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; fn block_by_hash<'life0, 'async_trait>( &'life0 self, hash: FixedBytes<32>, full: bool, ) -> Pin<Box<dyn Future<Output = Result<Option<B>, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; fn block_by_number<'life0, 'async_trait>( &'life0 self, number: BlockNumberOrTag, full: bool, ) -> Pin<Box<dyn Future<Output = Result<Option<B>, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; fn send_raw_transaction<'life0, 'async_trait>( &'life0 self, bytes: Bytes, ) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; fn logs<'life0, 'async_trait>( &'life0 self, filter: Filter, ) -> Pin<Box<dyn Future<Output = Result<Vec<Log>, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; fn get_proof<'life0, 'async_trait>( &'life0 self, address: Address, keys: Vec<JsonStorageKey>, block_number: Option<BlockId>, ) -> Pin<Box<dyn Future<Output = Result<EIP1186AccountProofResponse, ErrorObject<'static>>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: 'async_trait; // Provided method fn into_rpc(self) -> RpcModule<Self> where B: Send + Sync + 'static + Clone + Serialize { ... } }
Expand description

Server trait implementation for the EngineEthApi RPC API.

Required Methods§

source

fn syncing(&self) -> Result<SyncStatus, ErrorObject<'static>>

Returns an object with data about the sync status or false.

source

fn chain_id<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Option<Uint<64, 1>>, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Returns the chain ID of the current network.

source

fn block_number(&self) -> Result<Uint<256, 4>, ErrorObject<'static>>

Returns the number of most recent block.

source

fn call<'life0, 'async_trait>( &'life0 self, request: TransactionRequest, block_id: Option<BlockId>, state_overrides: Option<HashMap<Address, AccountOverride>>, block_overrides: Option<Box<BlockOverrides>>, ) -> Pin<Box<dyn Future<Output = Result<Bytes, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Executes a new message call immediately without creating a transaction on the block chain.

source

fn get_code<'life0, 'async_trait>( &'life0 self, address: Address, block_id: Option<BlockId>, ) -> Pin<Box<dyn Future<Output = Result<Bytes, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Returns code at a given address at given block number.

source

fn block_by_hash<'life0, 'async_trait>( &'life0 self, hash: FixedBytes<32>, full: bool, ) -> Pin<Box<dyn Future<Output = Result<Option<B>, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Returns information about a block by hash.

source

fn block_by_number<'life0, 'async_trait>( &'life0 self, number: BlockNumberOrTag, full: bool, ) -> Pin<Box<dyn Future<Output = Result<Option<B>, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Returns information about a block by number.

source

fn send_raw_transaction<'life0, 'async_trait>( &'life0 self, bytes: Bytes, ) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Sends signed transaction, returning its hash.

source

fn logs<'life0, 'async_trait>( &'life0 self, filter: Filter, ) -> Pin<Box<dyn Future<Output = Result<Vec<Log>, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Returns logs matching given filter object.

source

fn get_proof<'life0, 'async_trait>( &'life0 self, address: Address, keys: Vec<JsonStorageKey>, block_number: Option<BlockId>, ) -> Pin<Box<dyn Future<Output = Result<EIP1186AccountProofResponse, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Returns the account and storage values of the specified account including the Merkle-proof. This call can be used to verify that the data you are pulling from is not tampered with.

Provided Methods§

source

fn into_rpc(self) -> RpcModule<Self>
where B: Send + Sync + 'static + Clone + Serialize,

Collects all the methods and subscriptions defined in the trait and adds them into a single RpcModule.

Object Safety§

This trait is not object safe.

Implementors§