pub trait TrieConfiguration: Sized + TrieLayout {
    fn trie_build<DB, I, A, B>(
        db: &mut DB,
        input: I
    ) -> <Self::Hash as Hasher>::Out
    where
        DB: HashDB<Self::Hash, DBValue>,
        I: IntoIterator<Item = (A, B)>,
        A: AsRef<[u8]> + Ord,
        B: AsRef<[u8]>
, { ... } fn trie_root<I, A, B>(input: I) -> <Self::Hash as Hasher>::Out
    where
        I: IntoIterator<Item = (A, B)>,
        A: AsRef<[u8]> + Ord,
        B: AsRef<[u8]>
, { ... } fn trie_root_unhashed<I, A, B>(input: I) -> Vec<u8>
    where
        I: IntoIterator<Item = (A, B)>,
        A: AsRef<[u8]> + Ord,
        B: AsRef<[u8]>
, { ... } fn encode_index(input: u32) -> Vec<u8> { ... } fn ordered_trie_root<I, A>(input: I) -> <Self::Hash as Hasher>::Out
    where
        I: IntoIterator<Item = A>,
        A: AsRef<[u8]>
, { ... } }
Expand description

This trait associates a trie definition with preferred methods. It also contains own default implementations and can be used to allow switching implementation.

Provided Methods§

Operation to build a trie db from its ordered iterator over its key/values.

Determines a trie root given its ordered contents, closed form.

Determines a trie root node’s data given its ordered contents, closed form.

Encoding of index as a key (when reusing general trie for indexed trie).

A trie root formed from the items, with keys attached according to their compact-encoded index (using parity-codec crate).

Implementors§