pub trait HistoryWriter: Send + Sync {
// Required methods
fn unwind_account_history_indices(
&self,
range: RangeInclusive<u64>,
) -> Result<usize, ProviderError>;
fn insert_account_history_index(
&self,
index_updates: impl IntoIterator<Item = (Address, impl IntoIterator<Item = u64>)>,
) -> Result<(), ProviderError>;
fn unwind_storage_history_indices(
&self,
range: Range<BlockNumberAddress>,
) -> Result<usize, ProviderError>;
fn insert_storage_history_index(
&self,
storage_transitions: impl IntoIterator<Item = ((Address, FixedBytes<32>), impl IntoIterator<Item = u64>)>,
) -> Result<(), ProviderError>;
fn update_history_indices(
&self,
range: RangeInclusive<u64>,
) -> Result<(), ProviderError>;
}
Expand description
History Writer
Required Methods§
sourcefn unwind_account_history_indices(
&self,
range: RangeInclusive<u64>,
) -> Result<usize, ProviderError>
fn unwind_account_history_indices( &self, range: RangeInclusive<u64>, ) -> Result<usize, ProviderError>
Unwind and clear account history indices.
Returns number of changesets walked.
sourcefn insert_account_history_index(
&self,
index_updates: impl IntoIterator<Item = (Address, impl IntoIterator<Item = u64>)>,
) -> Result<(), ProviderError>
fn insert_account_history_index( &self, index_updates: impl IntoIterator<Item = (Address, impl IntoIterator<Item = u64>)>, ) -> Result<(), ProviderError>
Insert account change index to database. Used inside AccountHistoryIndex stage
sourcefn unwind_storage_history_indices(
&self,
range: Range<BlockNumberAddress>,
) -> Result<usize, ProviderError>
fn unwind_storage_history_indices( &self, range: Range<BlockNumberAddress>, ) -> Result<usize, ProviderError>
Unwind and clear storage history indices.
Returns number of changesets walked.
sourcefn insert_storage_history_index(
&self,
storage_transitions: impl IntoIterator<Item = ((Address, FixedBytes<32>), impl IntoIterator<Item = u64>)>,
) -> Result<(), ProviderError>
fn insert_storage_history_index( &self, storage_transitions: impl IntoIterator<Item = ((Address, FixedBytes<32>), impl IntoIterator<Item = u64>)>, ) -> Result<(), ProviderError>
Insert storage change index to database. Used inside StorageHistoryIndex stage
sourcefn update_history_indices(
&self,
range: RangeInclusive<u64>,
) -> Result<(), ProviderError>
fn update_history_indices( &self, range: RangeInclusive<u64>, ) -> Result<(), ProviderError>
Read account/storage changesets and update account/storage history indices.
Object Safety§
This trait is not object safe.