Trait pallet_revive_eth_rpc::EthRpcServer
source · pub trait EthRpcServer: Sized + Send + Sync + 'static {
Show 23 methods
// Required methods
fn accounts<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Address>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn block_number<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn call<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
block: Option<BlockNumberOrTagOrHash>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn chain_id<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn estimate_gas<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
block: Option<BlockNumberOrTag>,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn gas_price<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_balance<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_block_by_hash<'life0, 'async_trait>(
&'life0 self,
block_hash: H256,
hydrated_transactions: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Block>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_block_by_number<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
hydrated_transactions: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Block>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_block_transaction_count_by_hash<'life0, 'async_trait>(
&'life0 self,
block_hash: Option<H256>,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_block_transaction_count_by_number<'life0, 'async_trait>(
&'life0 self,
block: Option<BlockNumberOrTag>,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_code<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_storage_at<'life0, 'async_trait>(
&'life0 self,
address: Address,
storage_slot: U256,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_transaction_by_block_hash_and_index<'life0, 'async_trait>(
&'life0 self,
block_hash: H256,
transaction_index: U256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_transaction_by_block_number_and_index<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
transaction_index: U256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_transaction_by_hash<'life0, 'async_trait>(
&'life0 self,
transaction_hash: H256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_transaction_count<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_transaction_receipt<'life0, 'async_trait>(
&'life0 self,
transaction_hash: H256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<ReceiptInfo>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn send_raw_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: Bytes,
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn send_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn syncing<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<SyncingStatus>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn net_version<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<String>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
// Provided method
fn into_rpc(self) -> RpcModule<Self> { ... }
}
Expand description
Server trait implementation for the EthRpc
RPC API.
Required Methods§
sourcefn accounts<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Address>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn accounts<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Address>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns a list of addresses owned by client.
sourcefn block_number<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn block_number<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the number of most recent block.
sourcefn call<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
block: Option<BlockNumberOrTagOrHash>,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn call<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
block: Option<BlockNumberOrTagOrHash>,
) -> 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 chain_id<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn chain_id<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the chain ID of the current network.
sourcefn estimate_gas<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
block: Option<BlockNumberOrTag>,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn estimate_gas<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
block: Option<BlockNumberOrTag>,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generates and returns an estimate of how much gas is necessary to allow the transaction to complete.
sourcefn gas_price<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn gas_price<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the current price per gas in wei.
sourcefn get_balance<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_balance<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the balance of the account of given address.
sourcefn get_block_by_hash<'life0, 'async_trait>(
&'life0 self,
block_hash: H256,
hydrated_transactions: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Block>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_block_by_hash<'life0, 'async_trait>(
&'life0 self,
block_hash: H256,
hydrated_transactions: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Block>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns information about a block by hash.
sourcefn get_block_by_number<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
hydrated_transactions: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Block>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_block_by_number<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
hydrated_transactions: bool,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<Block>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns information about a block by number.
sourcefn get_block_transaction_count_by_hash<'life0, 'async_trait>(
&'life0 self,
block_hash: Option<H256>,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_block_transaction_count_by_hash<'life0, 'async_trait>(
&'life0 self,
block_hash: Option<H256>,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the number of transactions in a block from a block matching the given block hash.
sourcefn get_block_transaction_count_by_number<'life0, 'async_trait>(
&'life0 self,
block: Option<BlockNumberOrTag>,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_block_transaction_count_by_number<'life0, 'async_trait>(
&'life0 self,
block: Option<BlockNumberOrTag>,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<U256>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the number of transactions in a block matching the given block number.
sourcefn get_code<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> 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: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns code at a given address.
sourcefn get_storage_at<'life0, 'async_trait>(
&'life0 self,
address: Address,
storage_slot: U256,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_storage_at<'life0, 'async_trait>(
&'life0 self,
address: Address,
storage_slot: U256,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<Bytes>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the value from a storage position at a given address.
sourcefn get_transaction_by_block_hash_and_index<'life0, 'async_trait>(
&'life0 self,
block_hash: H256,
transaction_index: U256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_transaction_by_block_hash_and_index<'life0, 'async_trait>(
&'life0 self,
block_hash: H256,
transaction_index: U256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns information about a transaction by block hash and transaction index position.
sourcefn get_transaction_by_block_number_and_index<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
transaction_index: U256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_transaction_by_block_number_and_index<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
transaction_index: U256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns information about a transaction by block number and transaction index position.
sourcefn get_transaction_by_hash<'life0, 'async_trait>(
&'life0 self,
transaction_hash: H256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_transaction_by_hash<'life0, 'async_trait>(
&'life0 self,
transaction_hash: H256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<TransactionInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the information about a transaction requested by transaction hash.
sourcefn get_transaction_count<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_transaction_count<'life0, 'async_trait>(
&'life0 self,
address: Address,
block: BlockNumberOrTagOrHash,
) -> Pin<Box<dyn Future<Output = RpcResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the number of transactions sent from an address.
sourcefn get_transaction_receipt<'life0, 'async_trait>(
&'life0 self,
transaction_hash: H256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<ReceiptInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_transaction_receipt<'life0, 'async_trait>(
&'life0 self,
transaction_hash: H256,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<ReceiptInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns the receipt of a transaction by transaction hash.
sourcefn send_raw_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: Bytes,
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send_raw_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: Bytes,
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Submits a raw transaction. For EIP-4844 transactions, the raw form must be the network form. This means it includes the blobs, KZG commitments, and KZG proofs.
sourcefn send_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: GenericTransaction,
) -> Pin<Box<dyn Future<Output = RpcResult<H256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Signs and submits a transaction.