pub trait HashedPostStateProvider {
// Required method
fn hashed_post_state(
&self,
bundle_state: &BundleState,
) -> Result<HashedPostState, ProviderError>;
}Expand description
Trait that provides the hashed state from various sources.
Required Methods§
Sourcefn hashed_post_state(
&self,
bundle_state: &BundleState,
) -> Result<HashedPostState, ProviderError>
fn hashed_post_state( &self, bundle_state: &BundleState, ) -> Result<HashedPostState, ProviderError>
Returns the HashedPostState of the provided [BundleState], materializing zero-valued
updates for parent storage of accounts that were destroyed but remain in the post-state.
Providers backed by an exact parent-state view also materialize terminally destroyed accounts with explicit zero-valued storage updates.
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, N> HashedPostStateProvider for MemoryOverlayStateProvider<N>where
N: NodePrimitives,
impl<'a, N> HashedPostStateProvider for MemoryOverlayStateProvider<N>where
N: NodePrimitives,
fn hashed_post_state( &self, bundle_state: &BundleState, ) -> Result<HashedPostState, ProviderError>
Source§impl<'a, T> HashedPostStateProvider for &'a Twhere
T: 'a + HashedPostStateProvider + ?Sized,
impl<'a, T> HashedPostStateProvider for &'a Twhere
T: 'a + HashedPostStateProvider + ?Sized,
fn hashed_post_state( &self, bundle_state: &BundleState, ) -> Result<HashedPostState, ProviderError>
Source§impl<N> HashedPostStateProvider for MemoryOverlayStateProviderRef<'_, N>where
N: NodePrimitives,
impl<N> HashedPostStateProvider for MemoryOverlayStateProviderRef<'_, N>where
N: NodePrimitives,
fn hashed_post_state( &self, bundle_state: &BundleState, ) -> Result<HashedPostState, ProviderError>
Source§impl<Provider, N> HashedPostStateProvider for OverlayStateProvider<Provider, N>where
N: NodePrimitives,
Provider: Deref,
<Provider as Deref>::Target: DBProvider + StageCheckpointReader + PruneCheckpointReader + ChangeSetReader + StorageChangeSetReader + BlockNumReader + StorageSettingsCache,
impl<Provider, N> HashedPostStateProvider for OverlayStateProvider<Provider, N>where
N: NodePrimitives,
Provider: Deref,
<Provider as Deref>::Target: DBProvider + StageCheckpointReader + PruneCheckpointReader + ChangeSetReader + StorageChangeSetReader + BlockNumReader + StorageSettingsCache,
fn hashed_post_state( &self, bundle_state: &BundleState, ) -> Result<HashedPostState, ProviderError>
Source§impl<T> HashedPostStateProvider for Arc<T>where
T: HashedPostStateProvider + ?Sized,
impl<T> HashedPostStateProvider for Arc<T>where
T: HashedPostStateProvider + ?Sized,
fn hashed_post_state( &self, bundle_state: &BundleState, ) -> Result<HashedPostState, ProviderError>
Source§impl<T> HashedPostStateProvider for Box<T>where
T: HashedPostStateProvider + ?Sized,
impl<T> HashedPostStateProvider for Box<T>where
T: HashedPostStateProvider + ?Sized,
fn hashed_post_state( &self, bundle_state: &BundleState, ) -> Result<HashedPostState, ProviderError>
Implementors§
impl<'a, Provider: DBProvider + BlockHashReader + StorageSettingsCache> HashedPostStateProvider for LatestStateProvider<Provider>
impl<C, N> HashedPostStateProvider for NoopProvider<C, N>
impl<Provider: DBProvider> HashedPostStateProvider for LatestStateProviderRef<'_, Provider>
impl<T: NodePrimitives, ChainSpec: EthChainSpec + 'static> HashedPostStateProvider for MockEthProvider<T, ChainSpec>
Available on crate features
test-utils only.