pub trait PrunableStateChangesTrieStorage<Block: BlockT>: StateChangesTrieStorage<HashFor<Block>, NumberFor<Block>> {
fn storage(
&self
) -> &dyn StateChangesTrieStorage<HashFor<Block>, NumberFor<Block>>;
fn configuration_at(
&self,
at: &BlockId<Block>
) -> Result<ChangesTrieConfigurationRange<NumberFor<Block>, Block::Hash>>;
fn oldest_pruned_digest_range_end(&self) -> NumberFor<Block>;
}
Expand description
Changes trie storage that supports pruning.
Required methods
fn storage(
&self
) -> &dyn StateChangesTrieStorage<HashFor<Block>, NumberFor<Block>>
fn storage(
&self
) -> &dyn StateChangesTrieStorage<HashFor<Block>, NumberFor<Block>>
Get reference to StateChangesTrieStorage.
fn configuration_at(
&self,
at: &BlockId<Block>
) -> Result<ChangesTrieConfigurationRange<NumberFor<Block>, Block::Hash>>
fn configuration_at(
&self,
at: &BlockId<Block>
) -> Result<ChangesTrieConfigurationRange<NumberFor<Block>, Block::Hash>>
Get configuration at given block.
fn oldest_pruned_digest_range_end(&self) -> NumberFor<Block>
fn oldest_pruned_digest_range_end(&self) -> NumberFor<Block>
Get end block (inclusive) of oldest pruned max-level (or skewed) digest trie blocks range. It is guaranteed that we have no any changes tries before (and including) this block. It is guaranteed that all existing changes tries after this block are not yet pruned (if created).