Trait trie_db::TrieMut

source ·
pub trait TrieMut<L: TrieLayout> {
    fn root(&mut self) -> &TrieHash<L>;
    fn is_empty(&self) -> bool;
    fn get<'a, 'key>(
        &'a self,
        key: &'key [u8]
    ) -> Result<Option<DBValue>, TrieHash<L>, CError<L>>
    where
        'a: 'key
; fn insert(
        &mut self,
        key: &[u8],
        value: &[u8]
    ) -> Result<Option<Value<L>>, TrieHash<L>, CError<L>>; fn remove(
        &mut self,
        key: &[u8]
    ) -> Result<Option<Value<L>>, TrieHash<L>, CError<L>>; fn contains(&self, key: &[u8]) -> Result<bool, TrieHash<L>, CError<L>> { ... } }
Expand description

A key-value datastore implemented as a database-backed modified Merkle tree.

Required Methods§

source

fn root(&mut self) -> &TrieHash<L>

Return the root of the trie.

source

fn is_empty(&self) -> bool

Is the trie empty?

source

fn get<'a, 'key>(
    &'a self,
    key: &'key [u8]
) -> Result<Option<DBValue>, TrieHash<L>, CError<L>>where
    'a: 'key,

What is the value of the given key in this trie?

source

fn insert(
    &mut self,
    key: &[u8],
    value: &[u8]
) -> Result<Option<Value<L>>, TrieHash<L>, CError<L>>

Insert a key/value pair into the trie. An empty value is equivalent to removing key from the trie. Returns the old value associated with this key, if it existed.

source

fn remove(
    &mut self,
    key: &[u8]
) -> Result<Option<Value<L>>, TrieHash<L>, CError<L>>

Remove a key from the trie. Equivalent to making it equal to the empty value. Returns the old value associated with this key, if it existed.

Provided Methods§

source

fn contains(&self, key: &[u8]) -> Result<bool, TrieHash<L>, CError<L>>

Does the trie contain a given key?

Implementors§

source§

impl<'a, L> TrieMut<L> for TrieDBMut<'a, L>where
    L: TrieLayout,

source§

impl<'db, L> TrieMut<L> for SecTrieDBMut<'db, L>where
    L: TrieLayout,

source§

impl<'db, L> TrieMut<L> for FatDBMut<'db, L>where
    L: TrieLayout,