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§
Sourcefn from_tx(tx: &'a TX, address: Address) -> Self
fn from_tx(tx: &'a TX, address: Address) -> Self
Create a new [StorageProof
] from database transaction and account address.
Sourcefn overlay_storage_proof(
tx: &'a TX,
address: Address,
slot: B256,
storage: HashedStorage,
) -> Result<StorageProof, StateProofError>
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
].
Sourcefn overlay_storage_multiproof(
tx: &'a TX,
address: Address,
slots: &[B256],
storage: HashedStorage,
) -> Result<StorageMultiProof, StateProofError>
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.