#[non_exhaustive]pub struct NoopProvider<ChainSpec = ChainSpec, N = EthPrimitives> { /* private fields */ }
Expand description
Supports various api interfaces for testing purposes.
Implementations§
Source§impl<ChainSpec, N> NoopProvider<ChainSpec, N>
impl<ChainSpec, N> NoopProvider<ChainSpec, N>
Source§impl<ChainSpec> NoopProvider<ChainSpec>
impl<ChainSpec> NoopProvider<ChainSpec>
Source§impl NoopProvider
impl NoopProvider
Sourcepub fn mainnet() -> Self
pub fn mainnet() -> Self
Create a new instance of the NoopProvider
with the mainnet chain spec.
Trait Implementations§
Source§impl<C: Send + Sync, N: NodePrimitives> AccountReader for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> AccountReader for NoopProvider<C, N>
Source§fn basic_account(&self, _address: Address) -> ProviderResult<Option<Account>>
fn basic_account(&self, _address: Address) -> ProviderResult<Option<Account>>
Get basic account information. Read more
Source§impl<C: Send + Sync, N: Send + Sync> BlockBodyIndicesProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: Send + Sync> BlockBodyIndicesProvider for NoopProvider<C, N>
Source§fn block_body_indices(
&self,
_num: u64,
) -> ProviderResult<Option<StoredBlockBodyIndices>>
fn block_body_indices( &self, _num: u64, ) -> ProviderResult<Option<StoredBlockBodyIndices>>
Returns the block body indices with matching number from database. Read more
Source§impl<ChainSpec: Send + Sync, N: Send + Sync> BlockHashReader for NoopProvider<ChainSpec, N>
Noop implementation for testing purposes
impl<ChainSpec: Send + Sync, N: Send + Sync> BlockHashReader for NoopProvider<ChainSpec, N>
Noop implementation for testing purposes
Source§fn block_hash(&self, _number: u64) -> ProviderResult<Option<B256>>
fn block_hash(&self, _number: u64) -> ProviderResult<Option<B256>>
Get the hash of the block with the given number. Returns
None
if no block with this number
exists.Source§fn canonical_hashes_range(
&self,
_start: BlockNumber,
_end: BlockNumber,
) -> ProviderResult<Vec<B256>>
fn canonical_hashes_range( &self, _start: BlockNumber, _end: BlockNumber, ) -> ProviderResult<Vec<B256>>
Get headers in range of block hashes or numbers Read more
Source§fn convert_block_hash(
&self,
hash_or_number: BlockHashOrNumber,
) -> ProviderResult<Option<B256>>
fn convert_block_hash( &self, hash_or_number: BlockHashOrNumber, ) -> ProviderResult<Option<B256>>
Get the hash of the block with the given number. Returns
None
if no block with this number
exists.Source§impl<C: Send + Sync, N: NodePrimitives> BlockIdReader for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> BlockIdReader for NoopProvider<C, N>
Source§fn pending_block_num_hash(&self) -> ProviderResult<Option<BlockNumHash>>
fn pending_block_num_hash(&self) -> ProviderResult<Option<BlockNumHash>>
Get the current pending block number and hash.
Source§fn safe_block_num_hash(&self) -> ProviderResult<Option<BlockNumHash>>
fn safe_block_num_hash(&self) -> ProviderResult<Option<BlockNumHash>>
Get the current safe block number and hash.
Source§fn finalized_block_num_hash(&self) -> ProviderResult<Option<BlockNumHash>>
fn finalized_block_num_hash(&self) -> ProviderResult<Option<BlockNumHash>>
Get the current finalized block number and hash.
Source§fn convert_block_number(
&self,
num: BlockNumberOrTag,
) -> ProviderResult<Option<BlockNumber>>
fn convert_block_number( &self, num: BlockNumberOrTag, ) -> ProviderResult<Option<BlockNumber>>
Converts the
BlockNumberOrTag
variants to a block number.Source§fn block_hash_for_id(&self, block_id: BlockId) -> ProviderResult<Option<B256>>
fn block_hash_for_id(&self, block_id: BlockId) -> ProviderResult<Option<B256>>
Get the hash of the block by matching the given id.
Source§fn block_number_for_id(
&self,
block_id: BlockId,
) -> ProviderResult<Option<BlockNumber>>
fn block_number_for_id( &self, block_id: BlockId, ) -> ProviderResult<Option<BlockNumber>>
Get the number of the block by matching the given id.
Source§fn safe_block_number(&self) -> ProviderResult<Option<BlockNumber>>
fn safe_block_number(&self) -> ProviderResult<Option<BlockNumber>>
Get the safe block number.
Source§fn finalized_block_number(&self) -> ProviderResult<Option<BlockNumber>>
fn finalized_block_number(&self) -> ProviderResult<Option<BlockNumber>>
Get the finalized block number.
Source§fn safe_block_hash(&self) -> ProviderResult<Option<B256>>
fn safe_block_hash(&self) -> ProviderResult<Option<B256>>
Get the safe block hash.
Source§fn finalized_block_hash(&self) -> ProviderResult<Option<B256>>
fn finalized_block_hash(&self) -> ProviderResult<Option<B256>>
Get the finalized block hash.
Source§impl<ChainSpec: Send + Sync, N: Send + Sync> BlockNumReader for NoopProvider<ChainSpec, N>
impl<ChainSpec: Send + Sync, N: Send + Sync> BlockNumReader for NoopProvider<ChainSpec, N>
Source§fn chain_info(&self) -> ProviderResult<ChainInfo>
fn chain_info(&self) -> ProviderResult<ChainInfo>
Returns the current info for the chain.
Source§fn best_block_number(&self) -> ProviderResult<BlockNumber>
fn best_block_number(&self) -> ProviderResult<BlockNumber>
Returns the best block number in the chain.
Source§fn last_block_number(&self) -> ProviderResult<BlockNumber>
fn last_block_number(&self) -> ProviderResult<BlockNumber>
Returns the last block number associated with the last canonical header in the database.
Source§fn block_number(&self, _hash: B256) -> ProviderResult<Option<BlockNumber>>
fn block_number(&self, _hash: B256) -> ProviderResult<Option<BlockNumber>>
Gets the
BlockNumber
for the given hash. Returns None
if no block with this hash exists.Source§fn convert_hash_or_number(
&self,
id: BlockHashOrNumber,
) -> ProviderResult<Option<BlockNumber>>
fn convert_hash_or_number( &self, id: BlockHashOrNumber, ) -> ProviderResult<Option<BlockNumber>>
Gets the block number for the given
BlockHashOrNumber
. Returns None
if no block with
this hash exists. If the BlockHashOrNumber
is a Number
, it is returned as is.Source§fn convert_number(&self, id: BlockHashOrNumber) -> ProviderResult<Option<B256>>
fn convert_number(&self, id: BlockHashOrNumber) -> ProviderResult<Option<B256>>
Gets the block hash for the given
BlockHashOrNumber
. Returns None
if no block with this
number exists. If the BlockHashOrNumber
is a Hash
, it is returned as is.Source§impl<C: Send + Sync, N: NodePrimitives> BlockReader for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> BlockReader for NoopProvider<C, N>
Source§fn find_block_by_hash(
&self,
_hash: B256,
_source: BlockSource,
) -> ProviderResult<Option<Self::Block>>
fn find_block_by_hash( &self, _hash: B256, _source: BlockSource, ) -> ProviderResult<Option<Self::Block>>
Tries to find in the given block source. Read more
Source§fn block(&self, _id: BlockHashOrNumber) -> ProviderResult<Option<Self::Block>>
fn block(&self, _id: BlockHashOrNumber) -> ProviderResult<Option<Self::Block>>
Returns the block with given id from the database. Read more
Source§fn pending_block(&self) -> ProviderResult<Option<SealedBlockFor<Self::Block>>>
fn pending_block(&self) -> ProviderResult<Option<SealedBlockFor<Self::Block>>>
Returns the pending block if available Read more
Source§fn pending_block_with_senders(
&self,
) -> ProviderResult<Option<SealedBlockWithSenders<Self::Block>>>
fn pending_block_with_senders( &self, ) -> ProviderResult<Option<SealedBlockWithSenders<Self::Block>>>
Returns the pending block if available Read more
Source§fn pending_block_and_receipts(
&self,
) -> ProviderResult<Option<(SealedBlockFor<Self::Block>, Vec<Self::Receipt>)>>
fn pending_block_and_receipts( &self, ) -> ProviderResult<Option<(SealedBlockFor<Self::Block>, Vec<Self::Receipt>)>>
Returns the pending block and receipts if available.
Source§fn block_with_senders(
&self,
_id: BlockHashOrNumber,
_transaction_kind: TransactionVariant,
) -> ProviderResult<Option<BlockWithSenders<Self::Block>>>
fn block_with_senders( &self, _id: BlockHashOrNumber, _transaction_kind: TransactionVariant, ) -> ProviderResult<Option<BlockWithSenders<Self::Block>>>
Returns the block with senders with matching number or hash from database. Read more
Source§fn sealed_block_with_senders(
&self,
_id: BlockHashOrNumber,
_transaction_kind: TransactionVariant,
) -> ProviderResult<Option<SealedBlockWithSenders<Self::Block>>>
fn sealed_block_with_senders( &self, _id: BlockHashOrNumber, _transaction_kind: TransactionVariant, ) -> ProviderResult<Option<SealedBlockWithSenders<Self::Block>>>
Returns the sealed block with senders with matching number or hash from database. Read more
Source§fn block_range(
&self,
_range: RangeInclusive<BlockNumber>,
) -> ProviderResult<Vec<Self::Block>>
fn block_range( &self, _range: RangeInclusive<BlockNumber>, ) -> ProviderResult<Vec<Self::Block>>
Returns all blocks in the given inclusive range. Read more
Source§fn block_with_senders_range(
&self,
_range: RangeInclusive<BlockNumber>,
) -> ProviderResult<Vec<BlockWithSenders<Self::Block>>>
fn block_with_senders_range( &self, _range: RangeInclusive<BlockNumber>, ) -> ProviderResult<Vec<BlockWithSenders<Self::Block>>>
Returns a range of blocks from the database, along with the senders of each
transaction in the blocks.
Source§fn sealed_block_with_senders_range(
&self,
_range: RangeInclusive<BlockNumber>,
) -> ProviderResult<Vec<SealedBlockWithSenders<Self::Block>>>
fn sealed_block_with_senders_range( &self, _range: RangeInclusive<BlockNumber>, ) -> ProviderResult<Vec<SealedBlockWithSenders<Self::Block>>>
Returns a range of sealed blocks from the database, along with the senders of each
transaction in the blocks.
Source§fn block_by_hash(&self, hash: B256) -> ProviderResult<Option<Self::Block>>
fn block_by_hash(&self, hash: B256) -> ProviderResult<Option<Self::Block>>
Returns the block with matching hash from the database. Read more
Source§fn block_by_number(&self, num: u64) -> ProviderResult<Option<Self::Block>>
fn block_by_number(&self, num: u64) -> ProviderResult<Option<Self::Block>>
Returns the block with matching number from database. Read more
Source§impl<C: Send + Sync, N: NodePrimitives> BlockReaderIdExt for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> BlockReaderIdExt for NoopProvider<C, N>
Source§fn block_by_id(&self, _id: BlockId) -> ProviderResult<Option<N::Block>>
fn block_by_id(&self, _id: BlockId) -> ProviderResult<Option<N::Block>>
Returns the block with the matching [
BlockId
] from the database. Read moreSource§fn sealed_header_by_id(
&self,
_id: BlockId,
) -> ProviderResult<Option<SealedHeader<N::BlockHeader>>>
fn sealed_header_by_id( &self, _id: BlockId, ) -> ProviderResult<Option<SealedHeader<N::BlockHeader>>>
Returns the sealed header with the matching
BlockId
from the database. Read moreSource§fn header_by_id(&self, _id: BlockId) -> ProviderResult<Option<N::BlockHeader>>
fn header_by_id(&self, _id: BlockId) -> ProviderResult<Option<N::BlockHeader>>
Returns the header with the matching
BlockId
from the database. Read moreSource§fn ommers_by_id(
&self,
_id: BlockId,
) -> ProviderResult<Option<Vec<N::BlockHeader>>>
fn ommers_by_id( &self, _id: BlockId, ) -> ProviderResult<Option<Vec<N::BlockHeader>>>
Returns the ommers with the matching
BlockId
from the database. Read moreSource§fn block_by_number_or_tag(
&self,
id: BlockNumberOrTag,
) -> ProviderResult<Option<Self::Block>>
fn block_by_number_or_tag( &self, id: BlockNumberOrTag, ) -> ProviderResult<Option<Self::Block>>
Returns the block with matching tag from the database Read more
Source§fn pending_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
fn pending_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
Returns the pending block header if available Read more
Source§fn latest_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
fn latest_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
Returns the latest block header if available Read more
Source§fn safe_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
fn safe_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
Returns the safe block header if available Read more
Source§fn finalized_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
fn finalized_header(&self) -> ProviderResult<Option<SealedHeader<Self::Header>>>
Returns the finalized block header if available Read more
Source§fn block_with_senders_by_id(
&self,
id: BlockId,
transaction_kind: TransactionVariant,
) -> ProviderResult<Option<BlockWithSenders<Self::Block>>>
fn block_with_senders_by_id( &self, id: BlockId, transaction_kind: TransactionVariant, ) -> ProviderResult<Option<BlockWithSenders<Self::Block>>>
Returns the block with senders with matching [
BlockId
]. Read moreSource§fn header_by_number_or_tag(
&self,
id: BlockNumberOrTag,
) -> ProviderResult<Option<Self::Header>>
fn header_by_number_or_tag( &self, id: BlockNumberOrTag, ) -> ProviderResult<Option<Self::Header>>
Returns the header with matching tag from the database Read more
Source§fn sealed_header_by_number_or_tag(
&self,
id: BlockNumberOrTag,
) -> ProviderResult<Option<SealedHeader<Self::Header>>>
fn sealed_header_by_number_or_tag( &self, id: BlockNumberOrTag, ) -> ProviderResult<Option<SealedHeader<Self::Header>>>
Returns the header with matching tag from the database Read more
Source§fn ommers_by_number_or_tag(
&self,
id: BlockNumberOrTag,
) -> ProviderResult<Option<Vec<Self::Header>>>
fn ommers_by_number_or_tag( &self, id: BlockNumberOrTag, ) -> ProviderResult<Option<Vec<Self::Header>>>
Returns the ommers with the matching tag from the database.
Source§impl<ChainSpec: EthChainSpec + 'static, N: Send + Sync + 'static> ChainSpecProvider for NoopProvider<ChainSpec, N>
impl<ChainSpec: EthChainSpec + 'static, N: Send + Sync + 'static> ChainSpecProvider for NoopProvider<ChainSpec, N>
Source§impl<C: Send + Sync, N: NodePrimitives> ChangeSetReader for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> ChangeSetReader for NoopProvider<C, N>
Source§fn account_block_changeset(
&self,
_block_number: BlockNumber,
) -> ProviderResult<Vec<AccountBeforeTx>>
fn account_block_changeset( &self, _block_number: BlockNumber, ) -> ProviderResult<Vec<AccountBeforeTx>>
Iterate over account changesets and return the account state from before this block.
Source§impl<ChainSpec, N> Clone for NoopProvider<ChainSpec, N>
impl<ChainSpec, N> Clone for NoopProvider<ChainSpec, N>
Source§impl Default for NoopProvider
impl Default for NoopProvider
Source§impl<C: Send + Sync, N: NodePrimitives> HashedPostStateProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> HashedPostStateProvider for NoopProvider<C, N>
Source§fn hashed_post_state(&self, _bundle_state: &BundleState) -> HashedPostState
fn hashed_post_state(&self, _bundle_state: &BundleState) -> HashedPostState
Returns the
HashedPostState
of the provided [BundleState
].Source§impl<C: Send + Sync, N: NodePrimitives> HeaderProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> HeaderProvider for NoopProvider<C, N>
Source§fn header(
&self,
_block_hash: &BlockHash,
) -> ProviderResult<Option<Self::Header>>
fn header( &self, _block_hash: &BlockHash, ) -> ProviderResult<Option<Self::Header>>
Get header by block hash
Source§fn header_by_number(&self, _num: u64) -> ProviderResult<Option<Self::Header>>
fn header_by_number(&self, _num: u64) -> ProviderResult<Option<Self::Header>>
Get header by block number
Source§fn header_td(&self, _hash: &BlockHash) -> ProviderResult<Option<U256>>
fn header_td(&self, _hash: &BlockHash) -> ProviderResult<Option<U256>>
Get total difficulty by block hash.
Source§fn header_td_by_number(
&self,
_number: BlockNumber,
) -> ProviderResult<Option<U256>>
fn header_td_by_number( &self, _number: BlockNumber, ) -> ProviderResult<Option<U256>>
Get total difficulty by block number.
Source§fn headers_range(
&self,
_range: impl RangeBounds<BlockNumber>,
) -> ProviderResult<Vec<Self::Header>>
fn headers_range( &self, _range: impl RangeBounds<BlockNumber>, ) -> ProviderResult<Vec<Self::Header>>
Get headers in range of block numbers
Source§fn sealed_header(
&self,
_number: BlockNumber,
) -> ProviderResult<Option<SealedHeader<Self::Header>>>
fn sealed_header( &self, _number: BlockNumber, ) -> ProviderResult<Option<SealedHeader<Self::Header>>>
Get a single sealed header by block number.
Source§fn sealed_headers_while(
&self,
_range: impl RangeBounds<BlockNumber>,
_predicate: impl FnMut(&SealedHeader<Self::Header>) -> bool,
) -> ProviderResult<Vec<SealedHeader<Self::Header>>>
fn sealed_headers_while( &self, _range: impl RangeBounds<BlockNumber>, _predicate: impl FnMut(&SealedHeader<Self::Header>) -> bool, ) -> ProviderResult<Vec<SealedHeader<Self::Header>>>
Get sealed headers while
predicate
returns true
or the range is exhausted.Source§fn is_known(&self, block_hash: &BlockHash) -> ProviderResult<bool>
fn is_known(&self, block_hash: &BlockHash) -> ProviderResult<bool>
Check if block is known
Source§fn sealed_header_by_hash(
&self,
block_hash: BlockHash,
) -> ProviderResult<Option<SealedHeader<Self::Header>>>
fn sealed_header_by_hash( &self, block_hash: BlockHash, ) -> ProviderResult<Option<SealedHeader<Self::Header>>>
Retrieves the header sealed by the given block hash.
Source§fn header_by_hash_or_number(
&self,
hash_or_num: BlockHashOrNumber,
) -> ProviderResult<Option<Self::Header>>
fn header_by_hash_or_number( &self, hash_or_num: BlockHashOrNumber, ) -> ProviderResult<Option<Self::Header>>
Get header by block number or hash
Source§fn sealed_headers_range(
&self,
range: impl RangeBounds<BlockNumber>,
) -> ProviderResult<Vec<SealedHeader<Self::Header>>>
fn sealed_headers_range( &self, range: impl RangeBounds<BlockNumber>, ) -> ProviderResult<Vec<SealedHeader<Self::Header>>>
Get headers in range of block numbers.
Source§impl<C: Send + Sync, N: NodePrimitives> NodePrimitivesProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> NodePrimitivesProvider for NoopProvider<C, N>
Source§type Primitives = N
type Primitives = N
The node primitive types.
Source§impl<C: Send + Sync, N: NodePrimitives> OmmersProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> OmmersProvider for NoopProvider<C, N>
Source§impl<C: Send + Sync, N: NodePrimitives> PruneCheckpointReader for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> PruneCheckpointReader for NoopProvider<C, N>
Source§fn get_prune_checkpoint(
&self,
_segment: PruneSegment,
) -> ProviderResult<Option<PruneCheckpoint>>
fn get_prune_checkpoint( &self, _segment: PruneSegment, ) -> ProviderResult<Option<PruneCheckpoint>>
Fetch the prune checkpoint for the given segment.
Source§fn get_prune_checkpoints(
&self,
) -> ProviderResult<Vec<(PruneSegment, PruneCheckpoint)>>
fn get_prune_checkpoints( &self, ) -> ProviderResult<Vec<(PruneSegment, PruneCheckpoint)>>
Fetch all the prune checkpoints.
Source§impl<C: Send + Sync, N: NodePrimitives> ReceiptProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> ReceiptProvider for NoopProvider<C, N>
Source§fn receipt(&self, _id: TxNumber) -> ProviderResult<Option<Self::Receipt>>
fn receipt(&self, _id: TxNumber) -> ProviderResult<Option<Self::Receipt>>
Get receipt by transaction number Read more
Source§fn receipt_by_hash(
&self,
_hash: TxHash,
) -> ProviderResult<Option<Self::Receipt>>
fn receipt_by_hash( &self, _hash: TxHash, ) -> ProviderResult<Option<Self::Receipt>>
Get receipt by transaction hash. Read more
Source§fn receipts_by_block(
&self,
_block: BlockHashOrNumber,
) -> ProviderResult<Option<Vec<Self::Receipt>>>
fn receipts_by_block( &self, _block: BlockHashOrNumber, ) -> ProviderResult<Option<Vec<Self::Receipt>>>
Get receipts by block num or hash. Read more
Source§fn receipts_by_tx_range(
&self,
_range: impl RangeBounds<TxNumber>,
) -> ProviderResult<Vec<Self::Receipt>>
fn receipts_by_tx_range( &self, _range: impl RangeBounds<TxNumber>, ) -> ProviderResult<Vec<Self::Receipt>>
Get receipts by tx range.
Source§impl<C: Send + Sync, N: NodePrimitives> ReceiptProviderIdExt for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> ReceiptProviderIdExt for NoopProvider<C, N>
Source§fn receipts_by_block_id(
&self,
block: BlockId,
) -> ProviderResult<Option<Vec<Self::Receipt>>>
fn receipts_by_block_id( &self, block: BlockId, ) -> ProviderResult<Option<Vec<Self::Receipt>>>
Get receipt by block id
Source§fn receipts_by_number_or_tag(
&self,
number_or_tag: BlockNumberOrTag,
) -> ProviderResult<Option<Vec<Self::Receipt>>>
fn receipts_by_number_or_tag( &self, number_or_tag: BlockNumberOrTag, ) -> ProviderResult<Option<Vec<Self::Receipt>>>
Returns the block with the matching
BlockId
from the database. Read moreSource§impl<C: Send + Sync, N: NodePrimitives> StageCheckpointReader for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> StageCheckpointReader for NoopProvider<C, N>
Source§fn get_stage_checkpoint(
&self,
_id: StageId,
) -> ProviderResult<Option<StageCheckpoint>>
fn get_stage_checkpoint( &self, _id: StageId, ) -> ProviderResult<Option<StageCheckpoint>>
Fetch the checkpoint for the given stage.
Source§fn get_stage_checkpoint_progress(
&self,
_id: StageId,
) -> ProviderResult<Option<Vec<u8>>>
fn get_stage_checkpoint_progress( &self, _id: StageId, ) -> ProviderResult<Option<Vec<u8>>>
Get stage checkpoint progress.
Source§fn get_all_checkpoints(&self) -> ProviderResult<Vec<(String, StageCheckpoint)>>
fn get_all_checkpoints(&self) -> ProviderResult<Vec<(String, StageCheckpoint)>>
Reads all stage checkpoints and returns a list with the name of the stage and the checkpoint
data.
Source§impl<C: Send + Sync, N: NodePrimitives> StateProofProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> StateProofProvider for NoopProvider<C, N>
Source§fn proof(
&self,
_input: TrieInput,
address: Address,
_slots: &[B256],
) -> ProviderResult<AccountProof>
fn proof( &self, _input: TrieInput, address: Address, _slots: &[B256], ) -> ProviderResult<AccountProof>
Get account and storage proofs of target keys in the
HashedPostState
on top of the current state.Source§fn multiproof(
&self,
_input: TrieInput,
_targets: MultiProofTargets,
) -> ProviderResult<MultiProof>
fn multiproof( &self, _input: TrieInput, _targets: MultiProofTargets, ) -> ProviderResult<MultiProof>
Generate
MultiProof
for target hashed account and corresponding
hashed storage slot keys.Source§fn witness(
&self,
_input: TrieInput,
_target: HashedPostState,
) -> ProviderResult<B256HashMap<Bytes>>
fn witness( &self, _input: TrieInput, _target: HashedPostState, ) -> ProviderResult<B256HashMap<Bytes>>
Get trie witness for provided state.
Source§impl<C: Send + Sync, N: NodePrimitives> StateProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> StateProvider for NoopProvider<C, N>
Source§fn storage(
&self,
_account: Address,
_storage_key: StorageKey,
) -> ProviderResult<Option<StorageValue>>
fn storage( &self, _account: Address, _storage_key: StorageKey, ) -> ProviderResult<Option<StorageValue>>
Get storage of given account.
Source§fn bytecode_by_hash(&self, _code_hash: B256) -> ProviderResult<Option<Bytecode>>
fn bytecode_by_hash(&self, _code_hash: B256) -> ProviderResult<Option<Bytecode>>
Get account code by its hash
Source§fn account_code(&self, addr: Address) -> ProviderResult<Option<Bytecode>>
fn account_code(&self, addr: Address) -> ProviderResult<Option<Bytecode>>
Get account code by its address. Read more
Source§fn account_balance(&self, addr: Address) -> ProviderResult<Option<U256>>
fn account_balance(&self, addr: Address) -> ProviderResult<Option<U256>>
Get account balance by its address. Read more
Source§fn account_nonce(&self, addr: Address) -> ProviderResult<Option<u64>>
fn account_nonce(&self, addr: Address) -> ProviderResult<Option<u64>>
Get account nonce by its address. Read more
Source§impl<C: Send + Sync + 'static, N: NodePrimitives> StateProviderFactory for NoopProvider<C, N>
impl<C: Send + Sync + 'static, N: NodePrimitives> StateProviderFactory for NoopProvider<C, N>
Source§fn latest(&self) -> ProviderResult<StateProviderBox>
fn latest(&self) -> ProviderResult<StateProviderBox>
Storage provider for latest block.
Source§fn state_by_block_number_or_tag(
&self,
number_or_tag: BlockNumberOrTag,
) -> ProviderResult<StateProviderBox>
fn state_by_block_number_or_tag( &self, number_or_tag: BlockNumberOrTag, ) -> ProviderResult<StateProviderBox>
Returns a StateProvider indexed by the given block number or tag. Read more
Source§fn history_by_block_number(
&self,
_block: BlockNumber,
) -> ProviderResult<StateProviderBox>
fn history_by_block_number( &self, _block: BlockNumber, ) -> ProviderResult<StateProviderBox>
Returns a historical StateProvider indexed by the given historic block number. Read more
Source§fn history_by_block_hash(
&self,
_block: BlockHash,
) -> ProviderResult<StateProviderBox>
fn history_by_block_hash( &self, _block: BlockHash, ) -> ProviderResult<StateProviderBox>
Returns a historical StateProvider indexed by the given block hash. Read more
Source§fn state_by_block_hash(
&self,
_block: BlockHash,
) -> ProviderResult<StateProviderBox>
fn state_by_block_hash( &self, _block: BlockHash, ) -> ProviderResult<StateProviderBox>
Returns any StateProvider with matching block hash. Read more
Source§fn pending(&self) -> ProviderResult<StateProviderBox>
fn pending(&self) -> ProviderResult<StateProviderBox>
Storage provider for pending state. Read more
Source§fn pending_state_by_hash(
&self,
_block_hash: B256,
) -> ProviderResult<Option<StateProviderBox>>
fn pending_state_by_hash( &self, _block_hash: B256, ) -> ProviderResult<Option<StateProviderBox>>
Storage provider for pending state for the given block hash. Read more
Source§fn state_by_block_id(
&self,
block_id: BlockId,
) -> ProviderResult<StateProviderBox>
fn state_by_block_id( &self, block_id: BlockId, ) -> ProviderResult<StateProviderBox>
Source§impl<C: Send + Sync, N: NodePrimitives> StateRootProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> StateRootProvider for NoopProvider<C, N>
Source§fn state_root(&self, _state: HashedPostState) -> ProviderResult<B256>
fn state_root(&self, _state: HashedPostState) -> ProviderResult<B256>
Returns the state root of the
BundleState
on top of the current state. Read moreSource§fn state_root_from_nodes(&self, _input: TrieInput) -> ProviderResult<B256>
fn state_root_from_nodes(&self, _input: TrieInput) -> ProviderResult<B256>
Returns the state root of the
HashedPostState
on top of the current state but re-uses the
intermediate nodes to speed up the computation. It’s up to the caller to construct the
prefix sets and inform the provider of the trie paths that have changes.Source§fn state_root_with_updates(
&self,
_state: HashedPostState,
) -> ProviderResult<(B256, TrieUpdates)>
fn state_root_with_updates( &self, _state: HashedPostState, ) -> ProviderResult<(B256, TrieUpdates)>
Returns the state root of the
HashedPostState
on top of the current state with trie
updates to be committed to the database.Source§fn state_root_from_nodes_with_updates(
&self,
_input: TrieInput,
) -> ProviderResult<(B256, TrieUpdates)>
fn state_root_from_nodes_with_updates( &self, _input: TrieInput, ) -> ProviderResult<(B256, TrieUpdates)>
Returns state root and trie updates.
See
StateRootProvider::state_root_from_nodes
for more info.Source§impl<C: Send + Sync, N: NodePrimitives> StorageRootProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> StorageRootProvider for NoopProvider<C, N>
Source§fn storage_root(
&self,
_address: Address,
_hashed_storage: HashedStorage,
) -> ProviderResult<B256>
fn storage_root( &self, _address: Address, _hashed_storage: HashedStorage, ) -> ProviderResult<B256>
Returns the storage root of the
HashedStorage
for target address on top of the current
state.Source§fn storage_proof(
&self,
_address: Address,
slot: B256,
_hashed_storage: HashedStorage,
) -> ProviderResult<StorageProof>
fn storage_proof( &self, _address: Address, slot: B256, _hashed_storage: HashedStorage, ) -> ProviderResult<StorageProof>
Returns the storage proof of the
HashedStorage
for target slot on top of the current
state.Source§fn storage_multiproof(
&self,
_address: Address,
_slots: &[B256],
_hashed_storage: HashedStorage,
) -> ProviderResult<StorageMultiProof>
fn storage_multiproof( &self, _address: Address, _slots: &[B256], _hashed_storage: HashedStorage, ) -> ProviderResult<StorageMultiProof>
Returns the storage multiproof for target slots.
Source§impl<C: Send + Sync, N: NodePrimitives> TransactionsProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> TransactionsProvider for NoopProvider<C, N>
Source§type Transaction = <N as NodePrimitives>::SignedTx
type Transaction = <N as NodePrimitives>::SignedTx
The transaction type this provider reads.
Source§fn transaction_id(&self, _tx_hash: TxHash) -> ProviderResult<Option<TxNumber>>
fn transaction_id(&self, _tx_hash: TxHash) -> ProviderResult<Option<TxNumber>>
Get internal transaction identifier by transaction hash. Read more
Source§fn transaction_by_id(
&self,
_id: TxNumber,
) -> ProviderResult<Option<Self::Transaction>>
fn transaction_by_id( &self, _id: TxNumber, ) -> ProviderResult<Option<Self::Transaction>>
Get transaction by id, computes hash every time so more expensive.
Source§fn transaction_by_id_unhashed(
&self,
_id: TxNumber,
) -> ProviderResult<Option<Self::Transaction>>
fn transaction_by_id_unhashed( &self, _id: TxNumber, ) -> ProviderResult<Option<Self::Transaction>>
Get transaction by id without computing the hash.
Source§fn transaction_by_hash(
&self,
_hash: TxHash,
) -> ProviderResult<Option<Self::Transaction>>
fn transaction_by_hash( &self, _hash: TxHash, ) -> ProviderResult<Option<Self::Transaction>>
Get transaction by transaction hash.
Source§fn transaction_by_hash_with_meta(
&self,
_hash: TxHash,
) -> ProviderResult<Option<(Self::Transaction, TransactionMeta)>>
fn transaction_by_hash_with_meta( &self, _hash: TxHash, ) -> ProviderResult<Option<(Self::Transaction, TransactionMeta)>>
Get transaction by transaction hash and additional metadata of the block the transaction was
mined in
Source§fn transaction_block(
&self,
_id: TxNumber,
) -> ProviderResult<Option<BlockNumber>>
fn transaction_block( &self, _id: TxNumber, ) -> ProviderResult<Option<BlockNumber>>
Get transaction block number
Source§fn transactions_by_block(
&self,
_block_id: BlockHashOrNumber,
) -> ProviderResult<Option<Vec<Self::Transaction>>>
fn transactions_by_block( &self, _block_id: BlockHashOrNumber, ) -> ProviderResult<Option<Vec<Self::Transaction>>>
Get transactions by block id.
Source§fn transactions_by_block_range(
&self,
_range: impl RangeBounds<BlockNumber>,
) -> ProviderResult<Vec<Vec<Self::Transaction>>>
fn transactions_by_block_range( &self, _range: impl RangeBounds<BlockNumber>, ) -> ProviderResult<Vec<Vec<Self::Transaction>>>
Get transactions by block range.
Source§fn transactions_by_tx_range(
&self,
_range: impl RangeBounds<TxNumber>,
) -> ProviderResult<Vec<Self::Transaction>>
fn transactions_by_tx_range( &self, _range: impl RangeBounds<TxNumber>, ) -> ProviderResult<Vec<Self::Transaction>>
Get transactions by tx range.
Source§fn senders_by_tx_range(
&self,
_range: impl RangeBounds<TxNumber>,
) -> ProviderResult<Vec<Address>>
fn senders_by_tx_range( &self, _range: impl RangeBounds<TxNumber>, ) -> ProviderResult<Vec<Address>>
Get Senders from a tx range.
Source§fn transaction_sender(&self, _id: TxNumber) -> ProviderResult<Option<Address>>
fn transaction_sender(&self, _id: TxNumber) -> ProviderResult<Option<Address>>
Get transaction sender. Read more
Source§impl<C: Send + Sync, N: NodePrimitives> WithdrawalsProvider for NoopProvider<C, N>
impl<C: Send + Sync, N: NodePrimitives> WithdrawalsProvider for NoopProvider<C, N>
Source§fn withdrawals_by_block(
&self,
_id: BlockHashOrNumber,
_timestamp: u64,
) -> ProviderResult<Option<Withdrawals>>
fn withdrawals_by_block( &self, _id: BlockHashOrNumber, _timestamp: u64, ) -> ProviderResult<Option<Withdrawals>>
Get withdrawals by block id.
Source§fn latest_withdrawal(&self) -> ProviderResult<Option<Withdrawal>>
fn latest_withdrawal(&self) -> ProviderResult<Option<Withdrawal>>
Get latest withdrawal from this block or earlier .
Auto Trait Implementations§
impl<ChainSpec, N> Freeze for NoopProvider<ChainSpec, N>
impl<ChainSpec, N> RefUnwindSafe for NoopProvider<ChainSpec, N>where
N: RefUnwindSafe,
ChainSpec: RefUnwindSafe,
impl<ChainSpec, N> Send for NoopProvider<ChainSpec, N>
impl<ChainSpec, N> Sync for NoopProvider<ChainSpec, N>
impl<ChainSpec, N> Unpin for NoopProvider<ChainSpec, N>where
N: Unpin,
impl<ChainSpec, N> UnwindSafe for NoopProvider<ChainSpec, N>where
ChainSpec: RefUnwindSafe,
N: UnwindSafe,
Blanket Implementations§
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,
§impl<T> Conv for T
impl<T> Conv for T
§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<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> Pointable for T
impl<T> Pointable for T
§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<T> TryConv for T
impl<T> TryConv for T
§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,
impl<T> MaybeDebug for Twhere
T: Debug,
impl<T> MaybeSendSync for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 8 bytes