pub trait StorageRootProvider: Send + Sync {
// Required methods
fn storage_root(
&self,
address: Address,
hashed_storage: HashedStorage,
) -> ProviderResult<B256>;
fn storage_proof(
&self,
address: Address,
slot: B256,
hashed_storage: HashedStorage,
) -> ProviderResult<StorageProof>;
fn storage_multiproof(
&self,
address: Address,
slots: &[B256],
hashed_storage: HashedStorage,
) -> ProviderResult<StorageMultiProof>;
}
Expand description
A type that can compute the storage root for a given account.
Required Methods§
Sourcefn 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.
Sourcefn 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.
Sourcefn 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.