ChangesTrieRootsStorage

Trait ChangesTrieRootsStorage 

Source
pub trait ChangesTrieRootsStorage<H: Hasher, Number: BlockNumber>: Send + Sync {
    // Required methods
    fn build_anchor(
        &self,
        hash: H::Out,
    ) -> Result<AnchorBlockId<H::Out, Number>, String>;
    fn root(
        &self,
        anchor: &AnchorBlockId<H::Out, Number>,
        block: Number,
    ) -> Result<Option<H::Out>, String>;
}
Expand description

Changes trie storage. Provides access to trie roots and trie nodes.

Required Methods§

Source

fn build_anchor( &self, hash: H::Out, ) -> Result<AnchorBlockId<H::Out, Number>, String>

Resolve hash of the block into anchor.

Source

fn root( &self, anchor: &AnchorBlockId<H::Out, Number>, block: Number, ) -> Result<Option<H::Out>, String>

Get changes trie root for the block with given number which is an ancestor (or the block itself) of the anchor_block (i.e. anchor_block.number >= block).

Implementors§

Source§

impl<H: Hasher, Number: BlockNumber> RootsStorage<H, Number> for InMemoryStorage<H, Number>