pub trait EngineEthApiServer<TxReq: RpcObject, B: RpcObject, R: RpcObject>:
Sized
+ Send
+ Sync
+ 'static {
Show 17 methods
// Required methods
fn syncing(&self) -> RpcResult<SyncStatus>;
fn chain_id<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U64>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_number(&self) -> RpcResult<U256>;
fn call<'life0, 'async_trait>(
&'life0 self,
request: TxReq,
block_id: Option<BlockId>,
state_overrides: Option<StateOverride>,
block_overrides: Option<Box<BlockOverrides>>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_code<'life0, 'async_trait>(
&'life0 self,
address: Address,
block_id: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: B256,
full: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<B>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_by_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumberOrTag,
full: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<B>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_receipts<'life0, 'async_trait>(
&'life0 self,
block_id: BlockId,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Vec<R>>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn send_raw_transaction<'life0, 'async_trait>(
&'life0 self,
bytes: Bytes,
) -> Pin<Box<dyn Future<Output = RpcResult<B256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn transaction_receipt<'life0, 'async_trait>(
&'life0 self,
hash: B256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<R>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn logs<'life0, 'async_trait>(
&'life0 self,
filter: Filter,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Log>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_proof<'life0, 'async_trait>(
&'life0 self,
address: Address,
keys: Vec<JsonStorageKey>,
block_number: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = RpcResult<EIP1186AccountProofResponse>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_access_list_by_block_hash<'life0, 'async_trait>(
&'life0 self,
hash: B256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Value>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_access_list_by_block_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Value>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_access_list<'life0, 'async_trait>(
&'life0 self,
block_id: BlockId,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Value>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_access_list_raw<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Bytes>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
// Provided method
fn into_rpc(self) -> RpcModule<Self>
where TxReq: Send + Sync + 'static + DeserializeOwned,
B: Send + Sync + 'static + Clone + Serialize,
R: Send + Sync + 'static + Clone + Serialize { ... }
}Expand description
Server trait implementation for the EngineEthApi RPC API.
Required Methods§
Sourcefn syncing(&self) -> RpcResult<SyncStatus>
fn syncing(&self) -> RpcResult<SyncStatus>
Returns an object with data about the sync status or false.
Sourcefn chain_id<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U64>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn chain_id<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U64>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the chain ID of the current network.
Sourcefn block_number(&self) -> RpcResult<U256>
fn block_number(&self) -> RpcResult<U256>
Returns the number of most recent block.
Sourcefn call<'life0, 'async_trait>(
&'life0 self,
request: TxReq,
block_id: Option<BlockId>,
state_overrides: Option<StateOverride>,
block_overrides: Option<Box<BlockOverrides>>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
request: TxReq,
block_id: Option<BlockId>,
state_overrides: Option<StateOverride>,
block_overrides: Option<Box<BlockOverrides>>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Executes a new message call immediately without creating a transaction on the block chain.
Sourcefn get_code<'life0, 'async_trait>(
&'life0 self,
address: Address,
block_id: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_code<'life0, 'async_trait>(
&'life0 self,
address: Address,
block_id: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns code at a given address at given block number.
Sourcefn block_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: B256,
full: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<B>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: B256,
full: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<B>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns information about a block by hash.
Sourcefn block_by_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumberOrTag,
full: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<B>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_by_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumberOrTag,
full: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<B>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns information about a block by number.
Sourcefn block_receipts<'life0, 'async_trait>(
&'life0 self,
block_id: BlockId,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Vec<R>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_receipts<'life0, 'async_trait>(
&'life0 self,
block_id: BlockId,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Vec<R>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns all transaction receipts for a given block.
Sourcefn send_raw_transaction<'life0, 'async_trait>(
&'life0 self,
bytes: Bytes,
) -> Pin<Box<dyn Future<Output = RpcResult<B256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send_raw_transaction<'life0, 'async_trait>(
&'life0 self,
bytes: Bytes,
) -> Pin<Box<dyn Future<Output = RpcResult<B256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sends signed transaction, returning its hash.
Sourcefn transaction_receipt<'life0, 'async_trait>(
&'life0 self,
hash: B256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<R>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn transaction_receipt<'life0, 'async_trait>(
&'life0 self,
hash: B256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<R>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the receipt of a transaction by transaction hash.
Sourcefn logs<'life0, 'async_trait>(
&'life0 self,
filter: Filter,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Log>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn logs<'life0, 'async_trait>(
&'life0 self,
filter: Filter,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Log>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns logs matching given filter object.
Sourcefn get_proof<'life0, 'async_trait>(
&'life0 self,
address: Address,
keys: Vec<JsonStorageKey>,
block_number: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = RpcResult<EIP1186AccountProofResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_proof<'life0, 'async_trait>(
&'life0 self,
address: Address,
keys: Vec<JsonStorageKey>,
block_number: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = RpcResult<EIP1186AccountProofResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: '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.
Sourcefn block_access_list_by_block_hash<'life0, 'async_trait>(
&'life0 self,
hash: B256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Value>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_access_list_by_block_hash<'life0, 'async_trait>(
&'life0 self,
hash: B256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Value>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the EIP-7928 block access list for a block by hash.
Sourcefn block_access_list_by_block_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Value>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_access_list_by_block_number<'life0, 'async_trait>(
&'life0 self,
number: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Value>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the EIP-7928 block access list for a block by number.
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".