Trait trie_db::Query[][src]

pub trait Query<H: Hasher> {
    type Item;
    fn decode(self, data: &[u8]) -> Self::Item;

    fn record(&mut self, _hash: &H::Out, _data: &[u8], _depth: u32) { ... }
}

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

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

Decode a byte-slice into the desired item.

Loading content...

Provided methods

fn record(&mut self, _hash: &H::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: Hasher> Query<H> for (&'a mut Recorder<H::Out>, F) where
    F: FnOnce(&[u8]) -> T, 
[src]

type Item = T

Loading content...

Implementors

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

type Item = DBValue

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

type Item = T

Loading content...