pub struct EvmUser {
pub address: Address,
pub key: SecretKey<Secp256k1>,
pub provider: Arc<FillProvider<JoinFill<JoinFill<Identity, JoinFill<GasFiller, JoinFill<BlobGasFiller, JoinFill<NonceFiller, ChainIdFiller>>>>, WalletFiller<EthereumWallet>>, RootProvider, Ethereum>>,
}
Expand description
Represents a test user (address + provider + signer) in the EVM environment.
Fields§
§address: Address
Ethereum address of the user.
key: SecretKey<Secp256k1>
Secret key used for signing transactions.
provider: Arc<FillProvider<JoinFill<JoinFill<Identity, JoinFill<GasFiller, JoinFill<BlobGasFiller, JoinFill<NonceFiller, ChainIdFiller>>>>, WalletFiller<EthereumWallet>>, RootProvider, Ethereum>>
EVM provider configured for this user.
Trait Implementations§
Source§impl Provider for EvmUser
impl Provider for EvmUser
Source§fn root(&self) -> &RootProvider
fn root(&self) -> &RootProvider
Returns the root provider.
Source§fn get_accounts(&self) -> ProviderCall<NoParams, Vec<Address>>
fn get_accounts(&self) -> ProviderCall<NoParams, Vec<Address>>
Gets the accounts in the remote node. This is usually empty unless you’re using a local
node.
Source§fn get_blob_base_fee(&self) -> ProviderCall<NoParams, U128, u128>
fn get_blob_base_fee(&self) -> ProviderCall<NoParams, U128, u128>
Returns the base fee per blob gas (blob gas price) in wei.
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<'req>(
&self,
tx: <Ethereum as Network>::TransactionRequest,
) -> EthCall<Ethereum, Bytes>
fn call<'req>( &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 call_many<'req>(
&self,
bundles: &'req [Bundle],
) -> EthCallMany<'req, Ethereum, Vec<Vec<EthCallResponse>>>
fn call_many<'req>( &self, bundles: &'req [Bundle], ) -> EthCallMany<'req, Ethereum, Vec<Vec<EthCallResponse>>>
Execute a list of
Bundle
against the provided StateContext
and StateOverride
,
without publishing a transaction. Read moreSource§fn simulate<'req>(
&self,
payload: &'req SimulatePayload,
) -> RpcWithBlock<&'req SimulatePayload, Vec<SimulatedBlock<<Ethereum as Network>::BlockResponse>>>
fn simulate<'req>( &self, payload: &'req SimulatePayload, ) -> RpcWithBlock<&'req SimulatePayload, Vec<SimulatedBlock<<Ethereum as Network>::BlockResponse>>>
Executes an arbitrary number of transactions on top of the requested state. Read more
Source§fn get_chain_id(&self) -> ProviderCall<NoParams, U64, u64>
fn get_chain_id(&self) -> ProviderCall<NoParams, U64, u64>
Gets the chain ID.
Source§fn create_access_list<'a>(
&self,
request: &'a <Ethereum as Network>::TransactionRequest,
) -> RpcWithBlock<&'a <Ethereum as Network>::TransactionRequest, AccessListResult>
fn create_access_list<'a>( &self, request: &'a <Ethereum as Network>::TransactionRequest, ) -> RpcWithBlock<&'a <Ethereum as Network>::TransactionRequest, AccessListResult>
Create an EIP-2930 access list.
Source§fn send_raw_transaction<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = TransportResult<PendingTransactionBuilder<Ethereum>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn send_raw_transaction<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = TransportResult<PendingTransactionBuilder<Ethereum>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Broadcasts a raw transaction RLP bytes to the network. Read more
Source§fn send_raw_transaction_conditional<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
conditional: TransactionConditional,
) -> Pin<Box<dyn Future<Output = TransportResult<PendingTransactionBuilder<Ethereum>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn send_raw_transaction_conditional<'life0, 'life1, 'async_trait>(
&'life0 self,
encoded_tx: &'life1 [u8],
conditional: TransactionConditional,
) -> Pin<Box<dyn Future<Output = TransportResult<PendingTransactionBuilder<Ethereum>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Broadcasts a raw transaction RLP bytes with a conditional
TransactionConditional
to the
network. Read moreSource§fn syncing(&self) -> ProviderCall<NoParams, SyncStatus>
fn syncing(&self) -> ProviderCall<NoParams, SyncStatus>
Gets syncing info.
Source§fn get_client_version(&self) -> ProviderCall<NoParams, String>
fn get_client_version(&self) -> ProviderCall<NoParams, String>
Gets the client version.
Source§fn get_sha3(&self, data: &[u8]) -> ProviderCall<(String,), B256>
fn get_sha3(&self, data: &[u8]) -> ProviderCall<(String,), B256>
Gets the
Keccak-256
hash of the given data.Source§fn get_net_version(&self) -> ProviderCall<NoParams, U64, u64>
fn get_net_version(&self) -> ProviderCall<NoParams, U64, u64>
Gets the network ID. Same as
eth_chainId
.Source§fn raw_request_dyn<'life0, 'life1, 'async_trait>(
&'life0 self,
method: Cow<'static, str>,
params: &'life1 RawValue,
) -> Pin<Box<dyn Future<Output = TransportResult<Box<RawValue>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn raw_request_dyn<'life0, 'life1, 'async_trait>(
&'life0 self,
method: Cow<'static, str>,
params: &'life1 RawValue,
) -> Pin<Box<dyn Future<Output = TransportResult<Box<RawValue>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sends a raw JSON-RPC request with type-erased parameters and return. Read more
Source§fn transaction_request(&self) -> <Ethereum as Network>::TransactionRequest
fn transaction_request(&self) -> <Ethereum as Network>::TransactionRequest
Creates a new
TransactionRequest
.Source§fn builder() -> ProviderBuilder<Identity, Identity, N>where
Self: Sized,
fn builder() -> ProviderBuilder<Identity, Identity, N>where
Self: Sized,
Returns the
ProviderBuilder
to build on.Source§fn client(&self) -> &RpcClientInner
fn client(&self) -> &RpcClientInner
Returns the RPC client used to send requests. Read more
Source§fn weak_client(&self) -> Weak<RpcClientInner>
fn weak_client(&self) -> Weak<RpcClientInner>
Source§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 moreSource§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
Source§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 moreSource§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>
Source§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,
Source§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,
Source§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.Source§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.
Source§fn get_account_info(
&self,
address: Address,
) -> RpcWithBlock<Address, AccountInfo>
fn get_account_info( &self, address: Address, ) -> RpcWithBlock<Address, AccountInfo>
Source§fn get_account(&self, address: Address) -> RpcWithBlock<Address, TrieAccount>
fn get_account(&self, address: Address) -> RpcWithBlock<Address, TrieAccount>
Source§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
Source§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
Source§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>
Source§fn get_block_by_number(
&self,
number: BlockNumberOrTag,
) -> EthGetBlock<<N as Network>::BlockResponse>
fn get_block_by_number( &self, number: BlockNumberOrTag, ) -> EthGetBlock<<N as Network>::BlockResponse>
Gets a block by its BlockNumberOrTag Read more
Source§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.
Source§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.
Source§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.
Source§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.
Source§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 moreSource§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 moreSource§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 moreSource§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 moreSource§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 moreSource§fn get_filter_changes<'life0, 'async_trait, R>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<Vec<R>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>
fn get_filter_changes<'life0, 'async_trait, R>( &'life0 self, id: Uint<256, 4>, ) -> Pin<Box<dyn Future<Output = Result<Vec<R>, RpcError<TransportErrorKind>>> + Send + '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: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<FilterChanges, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_filter_changes_dyn<'life0, 'async_trait>(
&'life0 self,
id: Uint<256, 4>,
) -> Pin<Box<dyn Future<Output = Result<FilterChanges, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get a list of values that have been added since the last poll. Read more
Source§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.Source§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.
Source§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
Source§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,
Source§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
Source§fn get_storage_at(
&self,
address: Address,
key: Uint<256, 4>,
) -> RpcWithBlock<(Address, Uint<256, 4>), Uint<256, 4>>
fn get_storage_at( &self, address: Address, key: Uint<256, 4>, ) -> RpcWithBlock<(Address, Uint<256, 4>), Uint<256, 4>>
Gets the specified storage value from Address.
Source§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
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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
Source§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.
Source§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.
Source§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,
Source§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.
Source§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.Source§fn new_block_filter<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Uint<256, 4>, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn new_block_filter<'life0, 'async_trait>(
&'life0 self,
) -> 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 blocks. Read more
Source§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
Source§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
Source§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
Source§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
Source§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 moreSource§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
Source§fn subscribe_full_blocks(&self) -> SubFullBlocks<N>
fn subscribe_full_blocks(&self) -> SubFullBlocks<N>
Subscribe to a stream of full block bodies. Read more
Source§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
Source§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
Source§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
Source§fn subscribe<P, R>(&self, params: P) -> GetSubscription<P, R>
fn subscribe<P, R>(&self, params: P) -> GetSubscription<P, R>
Subscribe to an RPC event.
Source§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.
Auto Trait Implementations§
impl Freeze for EvmUser
impl !RefUnwindSafe for EvmUser
impl Send for EvmUser
impl Sync for EvmUser
impl Unpin for EvmUser
impl !UnwindSafe for EvmUser
Blanket Implementations§
Source§impl<N, P> AnvilApi<N> for P
impl<N, P> AnvilApi<N> for P
Source§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.
Source§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
.Source§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.
Source§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.
Source§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.
Source§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.
Source§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).
Source§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.
Source§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.
Source§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
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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
Source§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
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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
Source§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.
Source§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.
Source§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.Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<N, P> DebugApi<N> for P
impl<N, P> DebugApi<N> for P
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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.
Source§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
Source§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
Source§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
Source§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
Source§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
Source§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
Source§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
Source§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
Source§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
Source§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 moreSource§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 moreSource§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<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<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 moreSource§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 moreSource§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 moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<N, P> TraceApi<N> for P
impl<N, P> TraceApi<N> for P
Source§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
Source§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 moreSource§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.
Source§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
Source§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.
Source§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.
Source§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
Source§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
Source§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
Source§impl<P, N> TxPoolApi<N> for P
impl<P, N> TxPoolApi<N> for P
Source§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
Source§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
Source§fn txpool_inspect<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TxpoolInspect, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn txpool_inspect<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TxpoolInspect, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns a textual summary of each transaction in the pool. Read more
Source§fn txpool_status<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TxpoolStatus, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
fn txpool_status<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TxpoolStatus, RpcError<TransportErrorKind>>> + Send + 'async_trait>>where
'life0: 'async_trait,
P: 'async_trait,
Returns the current status of the transaction pool. Read more