pub trait DatabaseStorageRoot<'a, TX> {
// Required methods
fn from_tx(tx: &'a TX, address: Address) -> Self;
fn from_tx_hashed(tx: &'a TX, hashed_address: B256) -> Self;
fn overlay_root(
tx: &'a TX,
address: Address,
hashed_storage: HashedStorage,
) -> Result<B256, StorageRootError>;
}
Expand description
Extends [StorageRoot
] 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 storage root calculator from database transaction and raw address.
Sourcefn from_tx_hashed(tx: &'a TX, hashed_address: B256) -> Self
fn from_tx_hashed(tx: &'a TX, hashed_address: B256) -> Self
Create a new storage root calculator from database transaction and hashed address.
Sourcefn overlay_root(
tx: &'a TX,
address: Address,
hashed_storage: HashedStorage,
) -> Result<B256, StorageRootError>
fn overlay_root( tx: &'a TX, address: Address, hashed_storage: HashedStorage, ) -> Result<B256, StorageRootError>
Calculates the storage root for this [HashedStorage
] and returns it.
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.