reth_trie_db

Trait DatabaseStorageProof

Source
pub trait DatabaseStorageProof<'a, TX> {
    // Required methods
    fn from_tx(tx: &'a TX, address: Address) -> Self;
    fn overlay_storage_proof(
        tx: &'a TX,
        address: Address,
        slot: B256,
        storage: HashedStorage,
    ) -> Result<StorageProof, StateProofError>;
    fn overlay_storage_multiproof(
        tx: &'a TX,
        address: Address,
        slots: &[B256],
        storage: HashedStorage,
    ) -> Result<StorageMultiProof, StateProofError>;
}
Expand description

Extends [StorageProof] with operations specific for working with a database transaction.

Required Methods§

Source

fn from_tx(tx: &'a TX, address: Address) -> Self

Create a new [StorageProof] from database transaction and account address.

Source

fn overlay_storage_proof( tx: &'a TX, address: Address, slot: B256, storage: HashedStorage, ) -> Result<StorageProof, StateProofError>

Generates the storage proof for target slot based on [TrieInput].

Source

fn overlay_storage_multiproof( tx: &'a TX, address: Address, slots: &[B256], storage: HashedStorage, ) -> Result<StorageMultiProof, StateProofError>

Generates the storage multiproof for target slots based on [TrieInput].

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<'a, TX: DbTx> DatabaseStorageProof<'a, TX> for StorageProof<DatabaseTrieCursorFactory<'a, TX>, DatabaseHashedCursorFactory<'a, TX>>

Source§

fn from_tx(tx: &'a TX, address: Address) -> Self

Source§

fn overlay_storage_proof( tx: &'a TX, address: Address, slot: B256, storage: HashedStorage, ) -> Result<StorageProof, StateProofError>

Source§

fn overlay_storage_multiproof( tx: &'a TX, address: Address, slots: &[B256], storage: HashedStorage, ) -> Result<StorageMultiProof, StateProofError>

Implementors§