pub struct ArchiveHistoryProvider<P> {
provider: P,
current_block: Arc<AtomicU64>,
new_block_filter: Arc<RwLock<HashMap<U256, u64>>>,
}Fields§
§provider: P§current_block: Arc<AtomicU64>§new_block_filter: Arc<RwLock<HashMap<U256, u64>>>Implementations§
Source§impl<P> ArchiveHistoryProvider<P>
impl<P> ArchiveHistoryProvider<P>
pub fn block_number(&self) -> u64
pub fn block_id(&self) -> BlockId
Trait Implementations§
Source§impl<P: Clone> Clone for ArchiveHistoryProvider<P>
impl<P: Clone> Clone for ArchiveHistoryProvider<P>
Source§fn clone(&self) -> ArchiveHistoryProvider<P>
fn clone(&self) -> ArchiveHistoryProvider<P>
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<P> Provider for ArchiveHistoryProvider<P>
impl<P> Provider for ArchiveHistoryProvider<P>
Source§fn get_block_number(&self) -> ProviderCall<NoParams, U64, BlockNumber>
fn get_block_number(&self) -> ProviderCall<NoParams, U64, BlockNumber>
Get the last block number available.
Source§fn call(
&self,
tx: <Ethereum as Network>::TransactionRequest,
) -> EthCall<Ethereum, Bytes>
fn call( &self, tx: <Ethereum as Network>::TransactionRequest, ) -> EthCall<Ethereum, Bytes>
Execute a smart contract call with a transaction request and state
overrides, without publishing a transaction. Read more
Source§fn get_storage_at(
&self,
address: Address,
key: U256,
) -> RpcWithBlock<(Address, U256), StorageValue>
fn get_storage_at( &self, address: Address, key: U256, ) -> RpcWithBlock<(Address, U256), StorageValue>
Gets the specified storage value from [Address].
Source§fn get_block_by_number(&self, number: BlockNumberOrTag) -> EthGetBlock<Block>
fn get_block_by_number(&self, number: BlockNumberOrTag) -> EthGetBlock<Block>
Gets a block by its [BlockNumberOrTag] Read more
Source§fn get_filter_changes<'life0, 'async_trait, R>(
&'life0 self,
id: U256,
) -> Pin<Box<dyn Future<Output = TransportResult<Vec<R>>> + Send + 'async_trait>>where
R: 'async_trait + RpcRecv,
Self: 'async_trait,
'life0: 'async_trait,
fn get_filter_changes<'life0, 'async_trait, R>(
&'life0 self,
id: U256,
) -> Pin<Box<dyn Future<Output = TransportResult<Vec<R>>> + Send + 'async_trait>>where
R: 'async_trait + RpcRecv,
Self: 'async_trait,
'life0: 'async_trait,
Get a list of values that have been added since the last poll. Read more
Source§fn get_filter_changes_dyn<'life0, 'async_trait>(
&'life0 self,
id: U256,
) -> Pin<Box<dyn Future<Output = TransportResult<FilterChanges>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_filter_changes_dyn<'life0, 'async_trait>(
&'life0 self,
id: U256,
) -> Pin<Box<dyn Future<Output = TransportResult<FilterChanges>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get a list of values that have been added since the last poll. Read more
Source§fn new_block_filter<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = TransportResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn new_block_filter<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = TransportResult<U256>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Notify the provider that we are interested in new blocks. Read more
§fn builder() -> ProviderBuilder<Identity, Identity, N>where
Self: Sized,
fn builder() -> ProviderBuilder<Identity, Identity, N>where
Self: Sized,
Returns the [
ProviderBuilder] to build on.§fn weak_client(&self) -> Weak<RpcClientInner>
fn weak_client(&self) -> Weak<RpcClientInner>
§fn erased(self) -> DynProvider<N>where
Self: Sized + 'static,
fn erased(self) -> DynProvider<N>where
Self: Sized + 'static,
Returns a type erased provider wrapped in Arc. See [
DynProvider]. Read more§fn get_accounts(&self) -> ProviderCall<[(); 0], Vec<Address>>
fn get_accounts(&self) -> ProviderCall<[(); 0], Vec<Address>>
Gets the accounts in the remote node. This is usually empty unless you’re using a local
node.
§fn get_blob_base_fee(&self) -> ProviderCall<[(); 0], Uint<128, 2>, u128>
fn get_blob_base_fee(&self) -> ProviderCall<[(); 0], Uint<128, 2>, u128>
Returns the base fee per blob gas (blob gas price) in wei.
§fn get_block_number_by_id<'life0, 'async_trait>(
&'life0 self,
block_id: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_block_number_by_id<'life0, 'async_trait>(
&'life0 self,
block_id: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get the block number for a given block identifier. Read more
§fn call_many<'req>(
&self,
bundles: &'req [Bundle],
) -> EthCallMany<'req, N, Vec<Vec<EthCallResponse>>>
fn call_many<'req>( &self, bundles: &'req [Bundle], ) -> EthCallMany<'req, N, Vec<Vec<EthCallResponse>>>
Execute a list of [
Bundle] against the provided StateContext and StateOverride,
without publishing a transaction. Read more§fn multicall(&self) -> MulticallBuilder<Empty, &Self, N>where
Self: Sized,
fn multicall(&self) -> MulticallBuilder<Empty, &Self, N>where
Self: Sized,
Execute a multicall by leveraging the [
MulticallBuilder]. Read more§fn simulate<'req>(
&self,
payload: &'req SimulatePayload,
) -> RpcWithBlock<&'req SimulatePayload, Vec<SimulatedBlock<<N as Network>::BlockResponse>>>
fn simulate<'req>( &self, payload: &'req SimulatePayload, ) -> RpcWithBlock<&'req SimulatePayload, Vec<SimulatedBlock<<N as Network>::BlockResponse>>>
Executes an arbitrary number of transactions on top of the requested state. Read more
§fn get_chain_id(&self) -> ProviderCall<[(); 0], Uint<64, 1>, u64>
fn get_chain_id(&self) -> ProviderCall<[(); 0], Uint<64, 1>, u64>
Gets the chain ID.
§fn create_access_list<'a>(
&self,
request: &'a <N as Network>::TransactionRequest,
) -> RpcWithBlock<&'a <N as Network>::TransactionRequest, AccessListResult>
fn create_access_list<'a>( &self, request: &'a <N as Network>::TransactionRequest, ) -> RpcWithBlock<&'a <N as Network>::TransactionRequest, AccessListResult>
Create an EIP-2930 access list.
§fn estimate_gas(
&self,
tx: <N as Network>::TransactionRequest,
) -> EthCall<N, Uint<64, 1>, u64>
fn estimate_gas( &self, tx: <N as Network>::TransactionRequest, ) -> EthCall<N, Uint<64, 1>, u64>
Create an [
EthCall] future to estimate the gas required for a
transaction. Read more§fn estimate_eip1559_fees_with<'life0, 'async_trait>(
&'life0 self,
estimator: Eip1559Estimator,
) -> Pin<Box<dyn Future<Output = Result<Eip1559Estimation, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn estimate_eip1559_fees_with<'life0, 'async_trait>(
&'life0 self,
estimator: Eip1559Estimator,
) -> Pin<Box<dyn Future<Output = Result<Eip1559Estimation, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
§fn estimate_eip1559_fees<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Eip1559Estimation, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn estimate_eip1559_fees<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Eip1559Estimation, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
§fn get_fee_history<'life0, 'life1, 'async_trait>(
&'life0 self,
block_count: u64,
last_block: BlockNumberOrTag,
reward_percentiles: &'life1 [f64],
) -> Pin<Box<dyn Future<Output = Result<FeeHistory, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_fee_history<'life0, 'life1, 'async_trait>(
&'life0 self,
block_count: u64,
last_block: BlockNumberOrTag,
reward_percentiles: &'life1 [f64],
) -> Pin<Box<dyn Future<Output = Result<FeeHistory, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns a collection of historical gas information [FeeHistory] which
can be used to calculate the EIP1559 fields
maxFeePerGas and maxPriorityFeePerGas.
block_count can range from 1 to 1024 blocks in a single request.§fn get_gas_price(&self) -> ProviderCall<[(); 0], Uint<128, 2>, u128>
fn get_gas_price(&self) -> ProviderCall<[(); 0], Uint<128, 2>, u128>
Gets the current gas price in wei.
§fn get_account_info(
&self,
address: Address,
) -> RpcWithBlock<Address, AccountInfo>
fn get_account_info( &self, address: Address, ) -> RpcWithBlock<Address, AccountInfo>
§fn get_account(&self, address: Address) -> RpcWithBlock<Address, TrieAccount>
fn get_account(&self, address: Address) -> RpcWithBlock<Address, TrieAccount>
Retrieves account information (Account) for the given [Address]
at the particular [BlockId].
§fn get_balance(&self, address: Address) -> RpcWithBlock<Address, Uint<256, 4>>
fn get_balance(&self, address: Address) -> RpcWithBlock<Address, Uint<256, 4>>
Gets the balance of the account. Read more
§fn get_block(
&self,
block: BlockId,
) -> EthGetBlock<<N as Network>::BlockResponse>
fn get_block( &self, block: BlockId, ) -> EthGetBlock<<N as Network>::BlockResponse>
Gets a block by either its hash, tag, or number Read more
§fn get_block_by_hash(
&self,
hash: FixedBytes<32>,
) -> EthGetBlock<<N as Network>::BlockResponse>
fn get_block_by_hash( &self, hash: FixedBytes<32>, ) -> EthGetBlock<<N as Network>::BlockResponse>
Gets a block by its [BlockHash] Read more
§fn get_block_transaction_count_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_block_transaction_count_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the number of transactions in a block from a block matching the given block hash.
§fn get_block_transaction_count_by_number<'life0, 'async_trait>(
&'life0 self,
block_number: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_block_transaction_count_by_number<'life0, 'async_trait>(
&'life0 self,
block_number: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Returns the number of transactions in a block matching the given block number.
§fn get_block_receipts(
&self,
block: BlockId,
) -> ProviderCall<(BlockId,), Option<Vec<<N as Network>::ReceiptResponse>>>
fn get_block_receipts( &self, block: BlockId, ) -> ProviderCall<(BlockId,), Option<Vec<<N as Network>::ReceiptResponse>>>
Gets the selected block [BlockId] receipts.
§fn get_code_at(&self, address: Address) -> RpcWithBlock<Address, Bytes>
fn get_code_at(&self, address: Address) -> RpcWithBlock<Address, Bytes>
Gets the bytecode located at the corresponding [Address].
§fn watch_blocks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<FixedBytes<32>>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn watch_blocks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<FixedBytes<32>>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Watch for new blocks by polling the provider with
eth_getFilterChanges. Read more§fn watch_full_blocks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<WatchBlocks<<N as Network>::BlockResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn watch_full_blocks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<WatchBlocks<<N as Network>::BlockResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Watch for new blocks by polling the provider with
eth_getFilterChanges and transforming the returned block
hashes into full blocks bodies. Read more§fn watch_pending_transactions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<FixedBytes<32>>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn watch_pending_transactions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<FixedBytes<32>>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Watch for new pending transaction by polling the provider with
eth_getFilterChanges. Read more§fn watch_logs<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 Filter,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<Log>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn watch_logs<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 Filter,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<Log>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Watch for new logs using the given filter by polling the provider with
eth_getFilterChanges. Read more§fn watch_full_pending_transactions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<<N as Network>::TransactionResponse>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn watch_full_pending_transactions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<PollerBuilder<(Uint<256, 4>,), Vec<<N as Network>::TransactionResponse>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Watch for new pending transaction bodies by polling the provider with
eth_getFilterChanges. Read more§fn get_filter_logs<'life0, 'async_trait>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Log>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_filter_logs<'life0, 'async_trait>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Log>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Retrieves a
Vec<Log> for the given filter ID.§fn uninstall_filter<'life0, 'async_trait>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn uninstall_filter<'life0, 'async_trait>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Request provider to uninstall the filter with the given ID.
§fn watch_pending_transaction<'life0, 'async_trait>(
&'life0 self,
config: PendingTransactionConfig,
) -> Pin<Box<dyn Future<Output = Result<PendingTransaction, PendingTransactionError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn watch_pending_transaction<'life0, 'async_trait>(
&'life0 self,
config: PendingTransactionConfig,
) -> Pin<Box<dyn Future<Output = Result<PendingTransaction, PendingTransactionError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Watch for the confirmation of a single pending transaction with the given configuration. Read more
§fn get_logs<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 Filter,
) -> Pin<Box<dyn Future<Output = Result<Vec<Log>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_logs<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 Filter,
) -> Pin<Box<dyn Future<Output = Result<Vec<Log>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Retrieves a
Vec<Log> with the given [Filter].§fn get_proof(
&self,
address: Address,
keys: Vec<FixedBytes<32>>,
) -> RpcWithBlock<(Address, Vec<FixedBytes<32>>), EIP1186AccountProofResponse>
fn get_proof( &self, address: Address, keys: Vec<FixedBytes<32>>, ) -> RpcWithBlock<(Address, Vec<FixedBytes<32>>), EIP1186AccountProofResponse>
Get the account and storage values of the specified account including the merkle proofs. Read more
§fn get_transaction_by_sender_nonce(
&self,
sender: Address,
nonce: u64,
) -> ProviderCall<(Address, Uint<64, 1>), Option<<N as Network>::TransactionResponse>>
fn get_transaction_by_sender_nonce( &self, sender: Address, nonce: u64, ) -> ProviderCall<(Address, Uint<64, 1>), Option<<N as Network>::TransactionResponse>>
Gets a transaction by its sender and nonce. Read more
§fn get_transaction_by_hash(
&self,
hash: FixedBytes<32>,
) -> ProviderCall<(FixedBytes<32>,), Option<<N as Network>::TransactionResponse>>
fn get_transaction_by_hash( &self, hash: FixedBytes<32>, ) -> ProviderCall<(FixedBytes<32>,), Option<<N as Network>::TransactionResponse>>
Gets a transaction by its [TxHash].
§fn get_transaction_by_block_hash_and_index(
&self,
block_hash: FixedBytes<32>,
index: usize,
) -> ProviderCall<(FixedBytes<32>, Index), Option<<N as Network>::TransactionResponse>>
fn get_transaction_by_block_hash_and_index( &self, block_hash: FixedBytes<32>, index: usize, ) -> ProviderCall<(FixedBytes<32>, Index), Option<<N as Network>::TransactionResponse>>
Gets a transaction by block hash and transaction index position.
§fn get_raw_transaction_by_block_hash_and_index(
&self,
block_hash: FixedBytes<32>,
index: usize,
) -> ProviderCall<(FixedBytes<32>, Index), Option<Bytes>>
fn get_raw_transaction_by_block_hash_and_index( &self, block_hash: FixedBytes<32>, index: usize, ) -> ProviderCall<(FixedBytes<32>, Index), Option<Bytes>>
Gets a raw transaction by block hash and transaction index position.
§fn get_transaction_by_block_number_and_index(
&self,
block_number: BlockNumberOrTag,
index: usize,
) -> ProviderCall<(BlockNumberOrTag, Index), Option<<N as Network>::TransactionResponse>>
fn get_transaction_by_block_number_and_index( &self, block_number: BlockNumberOrTag, index: usize, ) -> ProviderCall<(BlockNumberOrTag, Index), Option<<N as Network>::TransactionResponse>>
Gets a transaction by block number and transaction index position.
§fn get_raw_transaction_by_block_number_and_index(
&self,
block_number: BlockNumberOrTag,
index: usize,
) -> ProviderCall<(BlockNumberOrTag, Index), Option<Bytes>>
fn get_raw_transaction_by_block_number_and_index( &self, block_number: BlockNumberOrTag, index: usize, ) -> ProviderCall<(BlockNumberOrTag, Index), Option<Bytes>>
Gets a raw transaction by block number and transaction index position.
§fn get_raw_transaction_by_hash(
&self,
hash: FixedBytes<32>,
) -> ProviderCall<(FixedBytes<32>,), Option<Bytes>>
fn get_raw_transaction_by_hash( &self, hash: FixedBytes<32>, ) -> ProviderCall<(FixedBytes<32>,), Option<Bytes>>
Returns the EIP-2718 encoded transaction if it exists, see also
Decodable2718. Read more
§fn get_transaction_count(
&self,
address: Address,
) -> RpcWithBlock<Address, Uint<64, 1>, u64>
fn get_transaction_count( &self, address: Address, ) -> RpcWithBlock<Address, Uint<64, 1>, u64>
Gets the transaction count (AKA “nonce”) of the corresponding address.
§fn get_transaction_receipt(
&self,
hash: FixedBytes<32>,
) -> ProviderCall<(FixedBytes<32>,), Option<<N as Network>::ReceiptResponse>>
fn get_transaction_receipt( &self, hash: FixedBytes<32>, ) -> ProviderCall<(FixedBytes<32>,), Option<<N as Network>::ReceiptResponse>>
Gets a transaction receipt if it exists, by its [TxHash].
§fn get_uncle<'life0, 'async_trait>(
&'life0 self,
tag: BlockId,
idx: u64,
) -> Pin<Box<dyn Future<Output = Result<Option<<N as Network>::BlockResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_uncle<'life0, 'async_trait>(
&'life0 self,
tag: BlockId,
idx: u64,
) -> Pin<Box<dyn Future<Output = Result<Option<<N as Network>::BlockResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Gets an uncle block through the tag [BlockId] and index u64.
§fn get_uncle_count<'life0, 'async_trait>(
&'life0 self,
tag: BlockId,
) -> Pin<Box<dyn Future<Output = Result<u64, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_uncle_count<'life0, 'async_trait>(
&'life0 self,
tag: BlockId,
) -> Pin<Box<dyn Future<Output = Result<u64, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Gets the number of uncles for the block specified by the tag [BlockId].
§fn get_max_priority_fee_per_gas(
&self,
) -> ProviderCall<[(); 0], Uint<128, 2>, u128>
fn get_max_priority_fee_per_gas( &self, ) -> ProviderCall<[(); 0], Uint<128, 2>, u128>
Returns a suggestion for the current
maxPriorityFeePerGas in wei.§fn new_filter<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 Filter,
) -> Pin<Box<dyn Future<Output = Result<Uint<256, 4>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn new_filter<'life0, 'life1, 'async_trait>(
&'life0 self,
filter: &'life1 Filter,
) -> Pin<Box<dyn Future<Output = Result<Uint<256, 4>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Notify the provider that we are interested in logs that match the given filter. Read more
§fn new_pending_transactions_filter<'life0, 'async_trait>(
&'life0 self,
full: bool,
) -> Pin<Box<dyn Future<Output = Result<Uint<256, 4>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn new_pending_transactions_filter<'life0, 'async_trait>(
&'life0 self,
full: bool,
) -> Pin<Box<dyn Future<Output = Result<Uint<256, 4>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Notify the provider that we are interested in new pending transactions. Read more
§fn send_raw_transaction<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn send_raw_transaction<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Broadcasts a raw transaction RLP bytes to the network. Read more
§fn send_raw_transaction_conditional<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
conditional: TransactionConditional,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn send_raw_transaction_conditional<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
conditional: TransactionConditional,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Broadcasts a raw transaction RLP bytes with a conditional [
TransactionConditional] to the
network. Read more§fn send_transaction<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn send_transaction<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Broadcasts a transaction to the network. Read more
§fn send_tx_envelope<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TxEnvelope,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn send_tx_envelope<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TxEnvelope,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Broadcasts a transaction envelope to the network. Read more
§fn sign_transaction<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn sign_transaction<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Signs a transaction that can be submitted to the network later using
[
Provider::send_raw_transaction]. Read more§fn subscribe_blocks(
&self,
) -> GetSubscription<(SubscriptionKind,), <N as Network>::HeaderResponse>
fn subscribe_blocks( &self, ) -> GetSubscription<(SubscriptionKind,), <N as Network>::HeaderResponse>
Subscribe to a stream of new block headers. Read more
§fn subscribe_full_blocks(&self) -> SubFullBlocks<N>
fn subscribe_full_blocks(&self) -> SubFullBlocks<N>
Subscribe to a stream of full block bodies. Read more
§fn subscribe_pending_transactions(
&self,
) -> GetSubscription<(SubscriptionKind,), FixedBytes<32>>
fn subscribe_pending_transactions( &self, ) -> GetSubscription<(SubscriptionKind,), FixedBytes<32>>
Subscribe to a stream of pending transaction hashes. Read more
§fn subscribe_full_pending_transactions(
&self,
) -> GetSubscription<(SubscriptionKind, Params), <N as Network>::TransactionResponse>
fn subscribe_full_pending_transactions( &self, ) -> GetSubscription<(SubscriptionKind, Params), <N as Network>::TransactionResponse>
Subscribe to a stream of pending transaction bodies. Read more
§fn subscribe_logs(
&self,
filter: &Filter,
) -> GetSubscription<(SubscriptionKind, Params), Log>
fn subscribe_logs( &self, filter: &Filter, ) -> GetSubscription<(SubscriptionKind, Params), Log>
Subscribe to a stream of logs matching given filter. Read more
§fn subscribe<P, R>(&self, params: P) -> GetSubscription<P, R>where
P: RpcSend,
R: RpcRecv,
Self: Sized,
fn subscribe<P, R>(&self, params: P) -> GetSubscription<P, R>where
P: RpcSend,
R: RpcRecv,
Self: Sized,
Subscribe to an RPC event.
§fn subscribe_to<R>(&self, method: &'static str) -> GetSubscription<[(); 0], R>where
R: RpcRecv,
Self: Sized,
fn subscribe_to<R>(&self, method: &'static str) -> GetSubscription<[(); 0], R>where
R: RpcRecv,
Self: Sized,
Subscribe to a non-standard subscription method without parameters. Read more
§fn unsubscribe<'life0, 'async_trait>(
&'life0 self,
id: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn unsubscribe<'life0, 'async_trait>(
&'life0 self,
id: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Cancels a subscription given the subscription ID.
§fn get_client_version(&self) -> ProviderCall<[(); 0], String>
fn get_client_version(&self) -> ProviderCall<[(); 0], String>
Gets the client version.
§fn get_sha3(&self, data: &[u8]) -> ProviderCall<(String,), FixedBytes<32>>
fn get_sha3(&self, data: &[u8]) -> ProviderCall<(String,), FixedBytes<32>>
Gets the
Keccak-256 hash of the given data.§fn get_net_version(&self) -> ProviderCall<[(); 0], Uint<64, 1>, u64>
fn get_net_version(&self) -> ProviderCall<[(); 0], Uint<64, 1>, u64>
Gets the network ID. Same as
eth_chainId.§fn raw_request<'life0, 'async_trait, P, R>(
&'life0 self,
method: Cow<'static, str>,
params: P,
) -> Pin<Box<dyn Future<Output = Result<R, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: RpcSend + 'async_trait,
R: RpcRecv + 'async_trait,
Self: Sized + 'async_trait,
fn raw_request<'life0, 'async_trait, P, R>(
&'life0 self,
method: Cow<'static, str>,
params: P,
) -> Pin<Box<dyn Future<Output = Result<R, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: RpcSend + 'async_trait,
R: RpcRecv + 'async_trait,
Self: Sized + 'async_trait,
Sends a raw JSON-RPC request. Read more
§fn raw_request_dyn<'life0, 'life1, 'async_trait>(
&'life0 self,
method: Cow<'static, str>,
params: &'life1 RawValue,
) -> Pin<Box<dyn Future<Output = Result<Box<RawValue>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn raw_request_dyn<'life0, 'life1, 'async_trait>(
&'life0 self,
method: Cow<'static, str>,
params: &'life1 RawValue,
) -> Pin<Box<dyn Future<Output = Result<Box<RawValue>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Sends a raw JSON-RPC request with type-erased parameters and return. Read more
§fn transaction_request(&self) -> <N as Network>::TransactionRequest
fn transaction_request(&self) -> <N as Network>::TransactionRequest
Creates a new
TransactionRequest.Auto Trait Implementations§
impl<P> Freeze for ArchiveHistoryProvider<P>where
P: Freeze,
impl<P> !RefUnwindSafe for ArchiveHistoryProvider<P>
impl<P> Send for ArchiveHistoryProvider<P>where
P: Send,
impl<P> Sync for ArchiveHistoryProvider<P>where
P: Sync,
impl<P> Unpin for ArchiveHistoryProvider<P>where
P: Unpin,
impl<P> !UnwindSafe for ArchiveHistoryProvider<P>
Blanket Implementations§
§impl<N, P> AnvilApi<N> for Pwhere
N: Network,
P: Provider<N>,
impl<N, P> AnvilApi<N> for Pwhere
N: Network,
P: Provider<N>,
§fn anvil_impersonate_account<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_impersonate_account<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Send transactions impersonating specific account and contract addresses.
§fn anvil_stop_impersonating_account<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_stop_impersonating_account<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Stops impersonating an account if previously set with
anvil_impersonateAccount.§fn anvil_auto_impersonate_account<'life0, 'async_trait>(
&'life0 self,
enabled: bool,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_auto_impersonate_account<'life0, 'async_trait>(
&'life0 self,
enabled: bool,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
If set to true will make every account impersonated.
§fn anvil_get_auto_mine<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_get_auto_mine<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns true if auto mining is enabled, and false.
§fn anvil_set_auto_mine<'life0, 'async_trait>(
&'life0 self,
enabled: bool,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_auto_mine<'life0, 'async_trait>(
&'life0 self,
enabled: bool,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Enables or disables, based on the single boolean argument, the automatic mining of new
blocks with each new transaction submitted to the network.
§fn anvil_mine<'life0, 'async_trait>(
&'life0 self,
num_blocks: Option<u64>,
interval: Option<u64>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_mine<'life0, 'async_trait>(
&'life0 self,
num_blocks: Option<u64>,
interval: Option<u64>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Mines a series of blocks.
§fn anvil_set_interval_mining<'life0, 'async_trait>(
&'life0 self,
secs: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_interval_mining<'life0, 'async_trait>(
&'life0 self,
secs: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the mining behavior to interval with the given interval (seconds).
§fn anvil_drop_transaction<'life0, 'async_trait>(
&'life0 self,
tx_hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<FixedBytes<32>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_drop_transaction<'life0, 'async_trait>(
&'life0 self,
tx_hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<FixedBytes<32>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Removes transactions from the pool.
§fn anvil_drop_all_transactions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_drop_all_transactions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Removes all transactions from the pool.
§fn anvil_reset<'life0, 'async_trait>(
&'life0 self,
forking: Option<Forking>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_reset<'life0, 'async_trait>(
&'life0 self,
forking: Option<Forking>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reset the fork to a fresh forked state, and optionally update the fork config. Read more
§fn anvil_set_chain_id<'life0, 'async_trait>(
&'life0 self,
chain_id: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_chain_id<'life0, 'async_trait>(
&'life0 self,
chain_id: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the chain ID.
§fn anvil_set_balance<'life0, 'async_trait>(
&'life0 self,
address: Address,
balance: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_balance<'life0, 'async_trait>(
&'life0 self,
address: Address,
balance: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Modifies the balance of an account.
§fn anvil_set_code<'life0, 'async_trait>(
&'life0 self,
address: Address,
code: Bytes,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_code<'life0, 'async_trait>(
&'life0 self,
address: Address,
code: Bytes,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the code of a contract.
§fn anvil_set_nonce<'life0, 'async_trait>(
&'life0 self,
address: Address,
nonce: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_nonce<'life0, 'async_trait>(
&'life0 self,
address: Address,
nonce: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the nonce of an address.
§fn anvil_set_storage_at<'life0, 'async_trait>(
&'life0 self,
address: Address,
slot: Uint<256, 4>,
val: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_storage_at<'life0, 'async_trait>(
&'life0 self,
address: Address,
slot: Uint<256, 4>,
val: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Writes a single slot of the account’s storage.
§fn anvil_set_logging<'life0, 'async_trait>(
&'life0 self,
enable: bool,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_logging<'life0, 'async_trait>(
&'life0 self,
enable: bool,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Enable or disable logging.
§fn anvil_set_min_gas_price<'life0, 'async_trait>(
&'life0 self,
gas: u128,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_min_gas_price<'life0, 'async_trait>(
&'life0 self,
gas: u128,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Set the minimum gas price for the node.
§fn anvil_set_next_block_base_fee_per_gas<'life0, 'async_trait>(
&'life0 self,
basefee: u128,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_next_block_base_fee_per_gas<'life0, 'async_trait>(
&'life0 self,
basefee: u128,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the base fee of the next block.
§fn anvil_set_coinbase<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_coinbase<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the coinbase address.
§fn anvil_dump_state<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_dump_state<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Create a buffer that represents all state on the chain, which can be loaded to separate
process by calling
anvil_loadState§fn anvil_load_state<'life0, 'async_trait>(
&'life0 self,
buf: Bytes,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_load_state<'life0, 'async_trait>(
&'life0 self,
buf: Bytes,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Append chain state buffer to current chain. Will overwrite any conflicting addresses or
storage.
§fn anvil_node_info<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<NodeInfo, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_node_info<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<NodeInfo, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Retrieves the Anvil node configuration params.
§fn anvil_metadata<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Metadata, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_metadata<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Metadata, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Retrieves metadata about the Anvil instance.
§fn anvil_remove_pool_transactions<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_remove_pool_transactions<'life0, 'async_trait>(
&'life0 self,
address: Address,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Removes all transactions from the pool for a specific address.
§fn anvil_snapshot<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Uint<256, 4>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_snapshot<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Uint<256, 4>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Snapshot the state of the blockchain at the current block.
§fn anvil_revert<'life0, 'async_trait>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_revert<'life0, 'async_trait>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Revert the state of the blockchain to a previous snapshot.
Takes a single parameter, which is the snapshot id to revert to.
§fn anvil_increase_time<'life0, 'async_trait>(
&'life0 self,
seconds: u64,
) -> Pin<Box<dyn Future<Output = Result<i64, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_increase_time<'life0, 'async_trait>(
&'life0 self,
seconds: u64,
) -> Pin<Box<dyn Future<Output = Result<i64, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Jump forward in time by the given amount of time, in seconds.
§fn anvil_set_next_block_timestamp<'life0, 'async_trait>(
&'life0 self,
seconds: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_next_block_timestamp<'life0, 'async_trait>(
&'life0 self,
seconds: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Similar to
evm_increaseTime but takes the exact timestamp that you want in the next block.§fn anvil_set_time<'life0, 'async_trait>(
&'life0 self,
timestamp: u64,
) -> Pin<Box<dyn Future<Output = Result<u64, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_time<'life0, 'async_trait>(
&'life0 self,
timestamp: u64,
) -> Pin<Box<dyn Future<Output = Result<u64, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the specific timestamp and returns the number of seconds between the given timestamp
and the current time.
§fn anvil_set_block_gas_limit<'life0, 'async_trait>(
&'life0 self,
gas_limit: u64,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_block_gas_limit<'life0, 'async_trait>(
&'life0 self,
gas_limit: u64,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Set the next block gas limit.
§fn anvil_set_block_timestamp_interval<'life0, 'async_trait>(
&'life0 self,
seconds: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_block_timestamp_interval<'life0, 'async_trait>(
&'life0 self,
seconds: u64,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets an interval for the block timestamp.
§fn anvil_remove_block_timestamp_interval<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_remove_block_timestamp_interval<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Unsets the interval for the block timestamp.
§fn evm_mine<'life0, 'async_trait>(
&'life0 self,
opts: Option<MineOptions>,
) -> Pin<Box<dyn Future<Output = Result<String, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn evm_mine<'life0, 'async_trait>(
&'life0 self,
opts: Option<MineOptions>,
) -> Pin<Box<dyn Future<Output = Result<String, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Mine blocks, instantly.
This will mine the blocks regardless of the configured mining mode.
§fn anvil_mine_detailed<'life0, 'async_trait>(
&'life0 self,
opts: Option<MineOptions>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Block>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_mine_detailed<'life0, 'async_trait>(
&'life0 self,
opts: Option<MineOptions>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Block>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Mine blocks, instantly and return the mined blocks.
This will mine the blocks regardless of the configured mining mode.
§fn anvil_set_rpc_url<'life0, 'async_trait>(
&'life0 self,
url: String,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_rpc_url<'life0, 'async_trait>(
&'life0 self,
url: String,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets the backend rpc url.
§fn anvil_reorg<'life0, 'async_trait>(
&'life0 self,
options: ReorgOptions,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_reorg<'life0, 'async_trait>(
&'life0 self,
options: ReorgOptions,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reorg the chain
§fn anvil_rollback<'life0, 'async_trait>(
&'life0 self,
depth: Option<u64>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_rollback<'life0, 'async_trait>(
&'life0 self,
depth: Option<u64>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Rollback the chain
§fn anvil_get_blob_by_versioned_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_get_blob_by_versioned_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Retrieves a blob by its versioned hash.
§fn anvil_get_blobs_by_tx_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_get_blobs_by_tx_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<FixedBytes<alloy_eips::::eip4844::Blob::{constant#0}>>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Retrieves blobs by transaction hash.
§fn eth_send_unsigned_transaction<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn eth_send_unsigned_transaction<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Execute a transaction regardless of signature status.
§fn eth_send_transaction_sync<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<<N as Network>::ReceiptResponse, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn eth_send_transaction_sync<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<<N as Network>::ReceiptResponse, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Executes a transaction and waits for it to be mined, returning the receipt.
§fn eth_send_raw_transaction_sync<'life0, 'async_trait>(
&'life0 self,
request: Bytes,
) -> Pin<Box<dyn Future<Output = Result<<N as Network>::ReceiptResponse, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn eth_send_raw_transaction_sync<'life0, 'async_trait>(
&'life0 self,
request: Bytes,
) -> Pin<Box<dyn Future<Output = Result<<N as Network>::ReceiptResponse, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sends a raw transaction and waits for it to be mined, returning the receipt.
§fn anvil_send_impersonated_transaction<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_send_impersonated_transaction<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Sets impersonated transaction
§fn anvil_deal_erc20<'life0, 'async_trait>(
&'life0 self,
address: Address,
token_address: Address,
balance: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_deal_erc20<'life0, 'async_trait>(
&'life0 self,
address: Address,
token_address: Address,
balance: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Modifies the ERC20 balance of an account.
§fn anvil_set_erc20_allowance<'life0, 'async_trait>(
&'life0 self,
owner: Address,
spender: Address,
token: Address,
allowance: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_set_erc20_allowance<'life0, 'async_trait>(
&'life0 self,
owner: Address,
spender: Address,
token: Address,
allowance: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<(), RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Modifies the ERC20 allowance of an account.
§fn anvil_send_impersonated_transaction_with_config<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
config: ImpersonateConfig,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn anvil_send_impersonated_transaction_with_config<'life0, 'async_trait>(
&'life0 self,
request: <N as Network>::TransactionRequest,
config: ImpersonateConfig,
) -> Pin<Box<dyn Future<Output = Result<PendingTransactionBuilder<N>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Impersonates the
from address in the given transaction request, optionally funds the
sender, sends the transaction, and optionally stops impersonating after execution based
on the provided config.§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)§impl<T> Conv for T
impl<T> Conv for T
§impl<N, P> DebugApi<N> for Pwhere
N: Network,
P: Provider<N>,
impl<N, P> DebugApi<N> for Pwhere
N: Network,
P: Provider<N>,
§fn debug_get_raw_header<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_get_raw_header<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns an RLP-encoded header.
§fn debug_get_raw_block<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_get_raw_block<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Retrieves and returns the RLP encoded block by number, hash or tag.
§fn debug_get_raw_transaction<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_get_raw_transaction<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns an EIP-2718 binary-encoded transaction.
§fn debug_get_raw_receipts<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_get_raw_receipts<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Vec<Bytes>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns an array of EIP-2718 binary-encoded receipts.
§fn debug_get_bad_blocks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<BadBlock>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_get_bad_blocks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<BadBlock>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns an array of recent bad blocks that the client has seen on the network.
§fn debug_trace_chain<'life0, 'async_trait>(
&'life0 self,
start_exclusive: BlockNumberOrTag,
end_inclusive: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = Result<Vec<BlockTraceResult>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_chain<'life0, 'async_trait>(
&'life0 self,
start_exclusive: BlockNumberOrTag,
end_inclusive: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = Result<Vec<BlockTraceResult>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns the structured logs created during the execution of EVM between two blocks
(excluding start) as a JSON object.
§fn debug_trace_block<'life0, 'life1, 'async_trait>(
&'life0 self,
rlp_block: &'life1 [u8],
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceResult<GethTrace, String>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
P: 'async_trait,
fn debug_trace_block<'life0, 'life1, 'async_trait>(
&'life0 self,
rlp_block: &'life1 [u8],
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceResult<GethTrace, String>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
P: 'async_trait,
The debug_traceBlock method will return a full stack trace of all invoked opcodes of all
transaction that were included in this block. Read more
§fn debug_trace_transaction<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<GethTrace, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_transaction<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<GethTrace, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the trace. Read more
§fn debug_trace_transaction_as<'life0, 'async_trait, R>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<R, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
R: RpcRecv + 'async_trait,
P: 'async_trait,
fn debug_trace_transaction_as<'life0, 'async_trait, R>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<R, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
R: RpcRecv + 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the trace in a specified format. Read more
§fn debug_trace_transaction_js<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Value, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_transaction_js<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Value, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the trace as a JSON object. Read more
§fn debug_trace_transaction_call<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<CallFrame, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_transaction_call<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<CallFrame, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the trace as a call frame. Read more
§fn debug_trace_call_as<'life0, 'async_trait, R>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<R, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
R: RpcRecv + 'async_trait,
P: 'async_trait,
fn debug_trace_call_as<'life0, 'async_trait, R>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<R, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
R: RpcRecv + 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the trace in a specified format. Read more
§fn debug_trace_call_js<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Value, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call_js<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Value, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the trace as a JSON object. Read more
§fn debug_trace_call_callframe<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<CallFrame, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call_callframe<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<CallFrame, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the trace as a call frame. Read more
§fn debug_trace_call_prestate<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<PreStateFrame, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call_prestate<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<PreStateFrame, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Reruns the transaction specified by the hash and returns the pre-state trace. Read more
§fn debug_trace_block_by_hash<'life0, 'async_trait>(
&'life0 self,
block: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceResult<GethTrace, String>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_block_by_hash<'life0, 'async_trait>(
&'life0 self,
block: FixedBytes<32>,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceResult<GethTrace, String>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Return a full stack trace of all invoked opcodes of all transaction that were included in
this block. Read more
§fn debug_trace_block_by_number<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceResult<GethTrace, String>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_block_by_number<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
trace_options: GethDebugTracingOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceResult<GethTrace, String>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Same as
debug_trace_block_by_hash but block is specified by number. Read more§fn debug_trace_call<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<GethTrace, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call<'life0, 'async_trait>(
&'life0 self,
tx: <N as Network>::TransactionRequest,
block: BlockId,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<GethTrace, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Executes the given transaction without publishing it like
eth_call and returns the trace
of the execution. Read more§fn debug_trace_call_many<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<GethTrace>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call_many<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<GethTrace>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Same as
debug_trace_call but it used to run and trace multiple transactions at once. Read more§fn debug_trace_call_many_as<'life0, 'async_trait, R>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<R>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
R: RpcRecv + 'async_trait,
P: 'async_trait,
fn debug_trace_call_many_as<'life0, 'async_trait, R>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<R>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
R: RpcRecv + 'async_trait,
P: 'async_trait,
§fn debug_trace_call_many_js<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<Value>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call_many_js<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<Value>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Same as
debug_trace_call_many but returns the traces as JSON objects. Read more§fn debug_trace_call_many_callframe<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<CallFrame>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call_many_callframe<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<CallFrame>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Same as
debug_trace_call_many but returns the traces as call frames. Read more§fn debug_trace_call_many_prestate<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<PreStateFrame>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_trace_call_many_prestate<'life0, 'async_trait>(
&'life0 self,
bundles: Vec<Bundle>,
state_context: StateContext,
trace_options: GethDebugTracingCallOptions,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<PreStateFrame>>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Same as
debug_trace_call_many but returns the pre-state traces. Read more§fn debug_execution_witness<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = Result<ExecutionWitness, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_execution_witness<'life0, 'async_trait>(
&'life0 self,
block: BlockNumberOrTag,
) -> Pin<Box<dyn Future<Output = Result<ExecutionWitness, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
The
debug_executionWitness method allows for re-execution of a block with the purpose of
generating an execution witness. The witness comprises of a map of all hashed trie nodes to
their preimages that were required during the execution of the block, including during
state root recomputation. Read more§fn debug_code_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
block: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = Result<Option<Bytes>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn debug_code_by_hash<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
block: Option<BlockId>,
) -> Pin<Box<dyn Future<Output = Result<Option<Bytes>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
The
debug_codeByHash method returns the code associated with a given hash at the specified
block. If no code is found, it returns None. If no block is provided, it defaults to the
latest block. Read more§fn debug_db_get<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
P: 'async_trait,
fn debug_db_get<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Bytes, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
P: 'async_trait,
The
debug_dbGet method retrieves a value from the database using the given key. Read more§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
Causes
self to use its Binary implementation when Debug-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
Causes
self to use its Display implementation when
Debug-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
Causes
self to use its LowerExp implementation when
Debug-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
Causes
self to use its LowerHex implementation when
Debug-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
Causes
self to use its Octal implementation when Debug-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
Causes
self to use its Pointer implementation when
Debug-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
Causes
self to use its UpperExp implementation when
Debug-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
Causes
self to use its UpperHex implementation when
Debug-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
Formats each item in a sequence. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<N, P> MevApi<N> for Pwhere
N: Network,
P: Provider<N>,
impl<N, P> MevApi<N> for Pwhere
N: Network,
P: Provider<N>,
§fn call_bundle(
&self,
bundle: EthCallBundle,
) -> MevBuilder<(EthCallBundle,), Option<EthCallBundleResponse>>
fn call_bundle( &self, bundle: EthCallBundle, ) -> MevBuilder<(EthCallBundle,), Option<EthCallBundleResponse>>
Simulates a bundle of transactions using the
eth_callBundle RPC method.§fn send_bundle(
&self,
bundle: EthSendBundle,
) -> MevBuilder<(EthSendBundle,), Option<EthBundleHash>>
fn send_bundle( &self, bundle: EthSendBundle, ) -> MevBuilder<(EthSendBundle,), Option<EthBundleHash>>
Sends a MEV bundle using the
eth_sendBundle RPC method.
Returns the resulting bundle hash on success. Read more§fn cancel_bundle(
&self,
replacement_uuid: String,
) -> MevBuilder<(EthCancelBundle,), ()>
fn cancel_bundle( &self, replacement_uuid: String, ) -> MevBuilder<(EthCancelBundle,), ()>
Cancels a previously sent MEV bundle using the
eth_cancelBundle RPC method.§fn send_blobs(&self, blobs: EthSendBlobs) -> MevBuilder<(EthSendBlobs,), ()>
fn send_blobs(&self, blobs: EthSendBlobs) -> MevBuilder<(EthSendBlobs,), ()>
Sends blob transaction permutations using the
eth_sendBlobs RPC method.§fn send_private_transaction(
&self,
private_tx: EthSendPrivateTransaction,
) -> MevBuilder<(EthSendPrivateTransaction,), Option<FixedBytes<32>>>
fn send_private_transaction( &self, private_tx: EthSendPrivateTransaction, ) -> MevBuilder<(EthSendPrivateTransaction,), Option<FixedBytes<32>>>
Sends a private transaction using the
eth_sendPrivateTransaction RPC method.§fn send_private_raw_transaction(
&self,
encoded_tx: &[u8],
preferences: Option<PrivateTransactionPreferences>,
) -> MevBuilder<(String, Option<PrivateTransactionPreferences>), Option<FixedBytes<32>>>
fn send_private_raw_transaction( &self, encoded_tx: &[u8], preferences: Option<PrivateTransactionPreferences>, ) -> MevBuilder<(String, Option<PrivateTransactionPreferences>), Option<FixedBytes<32>>>
Sends a private transaction using the
eth_sendPrivateRawTransaction RPC method.§fn cancel_private_transaction(
&self,
tx_hash: FixedBytes<32>,
) -> MevBuilder<(EthCancelPrivateTransaction,), bool>
fn cancel_private_transaction( &self, tx_hash: FixedBytes<32>, ) -> MevBuilder<(EthCancelPrivateTransaction,), bool>
Cancels a previously sent private transaction using the
eth_cancelPrivateTransaction RPC
method.§fn send_end_of_block_bundle(
&self,
bundle: EthSendEndOfBlockBundle,
) -> MevBuilder<(EthSendEndOfBlockBundle,), Option<EthBundleHash>>
fn send_end_of_block_bundle( &self, bundle: EthSendEndOfBlockBundle, ) -> MevBuilder<(EthSendEndOfBlockBundle,), Option<EthBundleHash>>
Sends end-of-block bundle using the
eth_sendEndOfBlockBundle RPC method.
Returns the resulting bundle hash on success.§fn send_mev_bundle(
&self,
bundle: MevSendBundle,
) -> MevBuilder<(MevSendBundle,), Option<EthBundleHash>>
fn send_mev_bundle( &self, bundle: MevSendBundle, ) -> MevBuilder<(MevSendBundle,), Option<EthBundleHash>>
Sends a MEV bundle using the
mev_sendBundle RPC method.
Returns the resulting bundle hash on success. Read more§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
Borrows
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
Mutably borrows
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
Borrows
self, then passes self.deref() into the pipe function.§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ServiceExt for T
impl<T> ServiceExt for T
§fn propagate_header(self, header: HeaderName) -> PropagateHeader<Self>where
Self: Sized,
fn propagate_header(self, header: HeaderName) -> PropagateHeader<Self>where
Self: Sized,
Propagate a header from the request to the response. Read more
§fn add_extension<T>(self, value: T) -> AddExtension<Self, T>where
Self: Sized,
fn add_extension<T>(self, value: T) -> AddExtension<Self, T>where
Self: Sized,
Add some shareable value to request extensions. Read more
§fn map_request_body<F>(self, f: F) -> MapRequestBody<Self, F>where
Self: Sized,
fn map_request_body<F>(self, f: F) -> MapRequestBody<Self, F>where
Self: Sized,
Apply a transformation to the request body. Read more
§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
§fn compression(self) -> Compression<Self>where
Self: Sized,
fn compression(self) -> Compression<Self>where
Self: Sized,
Compresses response bodies. Read more
§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
Decompress response bodies. Read more
§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more
§fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
§fn sensitive_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<SetSensitiveResponseHeaders<Self>>where
Self: Sized,
fn sensitive_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<SetSensitiveResponseHeaders<Self>>where
Self: Sized,
§fn sensitive_request_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<Self>where
Self: Sized,
fn sensitive_request_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<Self>where
Self: Sized,
§fn sensitive_response_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveResponseHeaders<Self>where
Self: Sized,
fn sensitive_response_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveResponseHeaders<Self>where
Self: Sized,
§fn override_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn override_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
Insert a header into the request. Read more
§fn append_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn append_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
Append a header into the request. Read more
§fn insert_request_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn insert_request_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
Insert a header into the request, if the header is not already present. Read more
§fn override_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn override_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
Insert a header into the response. Read more
§fn append_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn append_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
Append a header into the response. Read more
§fn insert_response_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn insert_response_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
Insert a header into the response, if the header is not already present. Read more
§fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
Add request id header and extension. Read more
§fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
Add request id header and extension, using
x-request-id as the header name. Read more§fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
Propgate request ids from requests to responses. Read more
§fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
Propgate request ids from requests to responses, using
x-request-id as the header name. Read more§fn catch_panic(self) -> CatchPanic<Self, DefaultResponseForPanic>where
Self: Sized,
fn catch_panic(self) -> CatchPanic<Self, DefaultResponseForPanic>where
Self: Sized,
Catch panics and convert them into
500 Internal Server responses. Read more§fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
Intercept requests with over-sized payloads and convert them into
413 Payload Too Large responses. Read more§fn trim_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
fn trim_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
Remove trailing slashes from paths. Read more
§fn append_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
fn append_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
Append trailing slash to paths. Read more
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Immutable access to the
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
Mutable access to the
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
Immutable access to the
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
Mutable access to the
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Immutable access to the
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Mutable access to the
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
Calls
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
Calls
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
Calls
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
Calls
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
Calls
.tap_deref() only in debug builds, and is erased in release
builds.§impl<N, P> TraceApi<N> for Pwhere
N: Network,
P: Provider<N>,
impl<N, P> TraceApi<N> for Pwhere
N: Network,
P: Provider<N>,
§fn trace_call<'a>(
&self,
request: &'a <N as Network>::TransactionRequest,
) -> TraceBuilder<&'a <N as Network>::TransactionRequest, TraceResults>
fn trace_call<'a>( &self, request: &'a <N as Network>::TransactionRequest, ) -> TraceBuilder<&'a <N as Network>::TransactionRequest, TraceResults>
Executes the given transaction and returns a number of possible traces. Read more
§fn trace_call_many<'a>(
&self,
request: &'a [(<N as Network>::TransactionRequest, &'a [TraceType])],
) -> TraceBuilder<&'a [(<N as Network>::TransactionRequest, &'a [TraceType])], Vec<TraceResults>>
fn trace_call_many<'a>( &self, request: &'a [(<N as Network>::TransactionRequest, &'a [TraceType])], ) -> TraceBuilder<&'a [(<N as Network>::TransactionRequest, &'a [TraceType])], Vec<TraceResults>>
Traces multiple transactions on top of the same block, i.e. transaction
n will be executed
on top of the given block with all n - 1 transaction applied first. Read more§fn trace_transaction<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Vec<LocalizedTransactionTrace>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn trace_transaction<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
) -> Pin<Box<dyn Future<Output = Result<Vec<LocalizedTransactionTrace>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Parity trace transaction.
§fn trace_get<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
index: usize,
) -> Pin<Box<dyn Future<Output = Result<LocalizedTransactionTrace, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn trace_get<'life0, 'async_trait>(
&'life0 self,
hash: FixedBytes<32>,
index: usize,
) -> Pin<Box<dyn Future<Output = Result<LocalizedTransactionTrace, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Traces of the transaction on the given positions Read more
§fn trace_raw_transaction<'a>(
&self,
data: &'a [u8],
) -> TraceBuilder<&'a [u8], TraceResults>
fn trace_raw_transaction<'a>( &self, data: &'a [u8], ) -> TraceBuilder<&'a [u8], TraceResults>
Trace the given raw transaction.
§fn trace_filter<'life0, 'life1, 'async_trait>(
&'life0 self,
tracer: &'life1 TraceFilter,
) -> Pin<Box<dyn Future<Output = Result<Vec<LocalizedTransactionTrace>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
P: 'async_trait,
fn trace_filter<'life0, 'life1, 'async_trait>(
&'life0 self,
tracer: &'life1 TraceFilter,
) -> Pin<Box<dyn Future<Output = Result<Vec<LocalizedTransactionTrace>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
P: 'async_trait,
Traces matching given filter.
§fn trace_block<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Vec<LocalizedTransactionTrace>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn trace_block<'life0, 'async_trait>(
&'life0 self,
block: BlockId,
) -> Pin<Box<dyn Future<Output = Result<Vec<LocalizedTransactionTrace>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Trace all transactions in the given block. Read more
§fn trace_replay_transaction(
&self,
hash: FixedBytes<32>,
) -> TraceBuilder<FixedBytes<32>, TraceResults>
fn trace_replay_transaction( &self, hash: FixedBytes<32>, ) -> TraceBuilder<FixedBytes<32>, TraceResults>
Replays a transaction. Read more
§fn trace_replay_block_transactions(
&self,
block: BlockId,
) -> TraceBuilder<BlockId, Vec<TraceResultsWithTransactionHash>>
fn trace_replay_block_transactions( &self, block: BlockId, ) -> TraceBuilder<BlockId, Vec<TraceResultsWithTransactionHash>>
Replays all transactions in the given block. Read more
§impl<T> TryConv for T
impl<T> TryConv for T
§impl<P, N> TxPoolApi<N> for Pwhere
P: Provider<N>,
N: Network,
impl<P, N> TxPoolApi<N> for Pwhere
P: Provider<N>,
N: Network,
§fn txpool_content<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TxpoolContent<<N as Network>::TransactionResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn txpool_content<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TxpoolContent<<N as Network>::TransactionResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns the content of the transaction pool. Read more
§fn txpool_content_from<'life0, 'async_trait>(
&'life0 self,
from: Address,
) -> Pin<Box<dyn Future<Output = Result<TxpoolContentFrom<<N as Network>::TransactionResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn txpool_content_from<'life0, 'async_trait>(
&'life0 self,
from: Address,
) -> Pin<Box<dyn Future<Output = Result<TxpoolContentFrom<<N as Network>::TransactionResponse>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns the content of the transaction pool filtered by a specific address. Read more
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<T> ErasedDestructor for Twhere
T: 'static,
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.