Trait trie_db::TrieConfiguration
source · pub trait TrieConfiguration: Sized + TrieLayout {
// Provided methods
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§
sourcefn trie_build<DB, I, A, B>(db: &mut DB, input: I) -> <Self::Hash as Hasher>::Outwhere
DB: HashDB<Self::Hash, DBValue>,
I: IntoIterator<Item = (A, B)>,
A: AsRef<[u8]> + Ord,
B: AsRef<[u8]>,
fn trie_build<DB, I, A, B>(db: &mut DB, input: I) -> <Self::Hash as Hasher>::Outwhere DB: HashDB<Self::Hash, DBValue>, I: IntoIterator<Item = (A, B)>, A: AsRef<[u8]> + Ord, B: AsRef<[u8]>,
Operation to build a trie db from its ordered iterator over its key/values.
sourcefn trie_root<I, A, B>(input: I) -> <Self::Hash as Hasher>::Outwhere
I: IntoIterator<Item = (A, B)>,
A: AsRef<[u8]> + Ord,
B: AsRef<[u8]>,
fn trie_root<I, A, B>(input: I) -> <Self::Hash as Hasher>::Outwhere I: IntoIterator<Item = (A, B)>, A: AsRef<[u8]> + Ord, B: AsRef<[u8]>,
Determines a trie root given its ordered contents, closed form.
sourcefn trie_root_unhashed<I, A, B>(input: I) -> Vec<u8> ⓘ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]>,
Determines a trie root node’s data given its ordered contents, closed form.
sourcefn encode_index(input: u32) -> Vec<u8> ⓘ
fn encode_index(input: u32) -> Vec<u8> ⓘ
Encoding of index as a key (when reusing general trie for indexed trie).
sourcefn ordered_trie_root<I, A>(input: I) -> <Self::Hash as Hasher>::Outwhere
I: IntoIterator<Item = A>,
A: AsRef<[u8]>,
fn ordered_trie_root<I, A>(input: I) -> <Self::Hash as Hasher>::Outwhere I: IntoIterator<Item = A>, A: AsRef<[u8]>,
A trie root formed from the items, with keys attached according to their
compact-encoded index (using parity-codec
crate).