reth::providers

Trait StorageTrieWriter

source
pub trait StorageTrieWriter: Send + Sync {
    // Required methods
    fn write_storage_trie_updates(
        &self,
        storage_tries: &HashMap<FixedBytes<32>, StorageTrieUpdates>,
    ) -> Result<usize, ProviderError>;
    fn write_individual_storage_trie_updates(
        &self,
        hashed_address: FixedBytes<32>,
        updates: &StorageTrieUpdates,
    ) -> Result<usize, ProviderError>;
}
Expand description

Storage Trie Writer

Required Methods§

source

fn write_storage_trie_updates( &self, storage_tries: &HashMap<FixedBytes<32>, StorageTrieUpdates>, ) -> Result<usize, ProviderError>

Writes storage trie updates from the given storage trie map.

First sorts the storage trie updates by the hashed address key, writing in sorted order.

Returns the number of entries modified.

source

fn write_individual_storage_trie_updates( &self, hashed_address: FixedBytes<32>, updates: &StorageTrieUpdates, ) -> Result<usize, ProviderError>

Writes storage trie updates for the given hashed address.

Implementations on Foreign Types§

source§

impl<'a, T> StorageTrieWriter for &'a T
where T: 'a + StorageTrieWriter + ?Sized, &'a T: Send + Sync,

source§

fn write_storage_trie_updates( &self, storage_tries: &HashMap<FixedBytes<32>, StorageTrieUpdates>, ) -> Result<usize, ProviderError>

source§

fn write_individual_storage_trie_updates( &self, hashed_address: FixedBytes<32>, updates: &StorageTrieUpdates, ) -> Result<usize, ProviderError>

source§

impl<T> StorageTrieWriter for Box<T>
where T: StorageTrieWriter + ?Sized, Box<T>: Send + Sync,

source§

fn write_storage_trie_updates( &self, storage_tries: &HashMap<FixedBytes<32>, StorageTrieUpdates>, ) -> Result<usize, ProviderError>

source§

fn write_individual_storage_trie_updates( &self, hashed_address: FixedBytes<32>, updates: &StorageTrieUpdates, ) -> Result<usize, ProviderError>

source§

impl<T> StorageTrieWriter for Arc<T>
where T: StorageTrieWriter + ?Sized, Arc<T>: Send + Sync,

source§

fn write_storage_trie_updates( &self, storage_tries: &HashMap<FixedBytes<32>, StorageTrieUpdates>, ) -> Result<usize, ProviderError>

source§

fn write_individual_storage_trie_updates( &self, hashed_address: FixedBytes<32>, updates: &StorageTrieUpdates, ) -> Result<usize, ProviderError>

Implementors§

source§

impl<TX, Spec> StorageTrieWriter for DatabaseProvider<TX, Spec>
where TX: DbTxMut + DbTx, Spec: Send + Sync,