Trait sp_trie::Query[][src]

pub trait Query<H> where
    H: Hasher
{ type Item; pub fn decode(self, data: &[u8]) -> Self::Item; pub fn record(
        &mut self,
        _hash: &<H as Hasher>::Out,
        _data: &[u8],
        _depth: u32
    ) { ... } }

Various re-exports from the trie-db crate. Description of what kind of query will be made to the trie.

This is implemented for any &mut recorder (where the query will return a DBValue), any function taking raw bytes (where no recording will be made), or any tuple of (&mut Recorder, FnOnce(&u8))

Associated Types

type Item[src]

Output item.

Loading content...

Required methods

pub fn decode(self, data: &[u8]) -> Self::Item[src]

Decode a byte-slice into the desired item.

Loading content...

Provided methods

pub fn record(&mut self, _hash: &<H as Hasher>::Out, _data: &[u8], _depth: u32)[src]

Record that a node has been passed through.

Loading content...

Implementations on Foreign Types

impl<'a, F, T, H> Query<H> for (&'a mut Recorder<<H as Hasher>::Out>, F) where
    H: Hasher,
    F: FnOnce(&[u8]) -> T, 
[src]

type Item = T

Loading content...

Implementors

impl<'a, H> Query<H> for &'a mut Recorder<<H as Hasher>::Out> where
    H: Hasher
[src]

type Item = Vec<u8, Global>

impl<F, T, H> Query<H> for F where
    H: Hasher,
    F: for<'a> FnOnce(&'a [u8]) -> T, 
[src]

type Item = T

Loading content...