Skip to main content

HistoryReader

Trait HistoryReader 

Source
pub trait HistoryReader: Send {
    // Required methods
    fn account_history_info(
        &self,
        address: Address,
        block_number: BlockNumber,
        lowest_available_block_number: Option<BlockNumber>,
    ) -> ProviderResult<HistoryInfo>;
    fn storage_history_info(
        &self,
        address: Address,
        storage_key: B256,
        block_number: BlockNumber,
        lowest_available_block_number: Option<BlockNumber>,
    ) -> ProviderResult<HistoryInfo>;
}
Available on crate feature db-api only.
Expand description

Reads account and storage history indices.

Required Methods§

Source

fn account_history_info( &self, address: Address, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Looks up an account’s historical storage location.

Source

fn storage_history_info( &self, address: Address, storage_key: B256, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Looks up a storage slot’s historical storage location.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'a, T: 'a + HistoryReader + ?Sized> HistoryReader for &'a T
where &'a T: Send,

Source§

fn account_history_info( &self, address: Address, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Source§

fn storage_history_info( &self, address: Address, storage_key: B256, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Source§

impl<T: HistoryReader + ?Sized> HistoryReader for Arc<T>
where Arc<T>: Send,

Source§

fn account_history_info( &self, address: Address, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Source§

fn storage_history_info( &self, address: Address, storage_key: B256, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Source§

impl<T: HistoryReader + ?Sized> HistoryReader for Box<T>
where Box<T>: Send,

Source§

fn account_history_info( &self, address: Address, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Source§

fn storage_history_info( &self, address: Address, storage_key: B256, block_number: BlockNumber, lowest_available_block_number: Option<BlockNumber>, ) -> ProviderResult<HistoryInfo>

Implementors§

Source§

impl<C: Send + Sync, N: NodePrimitives> HistoryReader for NoopProvider<C, N>