Trait sp_state_machine::TrieMut [−]
pub trait TrieMut<L> where
L: TrieLayout, { fn root(&mut self) -> &<<L as TrieLayout>::Hash as Hasher>::Out; fn is_empty(&self) -> bool; fn get<'a, 'key>(
&'a self,
key: &'key [u8]
) -> Result<Option<Vec<u8, Global>>, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>>
where
'a: 'key; fn insert(
&mut self,
key: &[u8],
value: &[u8]
) -> Result<Option<Vec<u8, Global>>, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>>; fn remove(
&mut self,
key: &[u8]
) -> Result<Option<Vec<u8, Global>>, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>>; fn contains(
&self,
key: &[u8]
) -> Result<bool, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>> { ... } }
Expand description
A key-value datastore implemented as a database-backed modified Merkle tree.
Required methods
fn root(&mut self) -> &<<L as TrieLayout>::Hash as Hasher>::Out
fn root(&mut self) -> &<<L as TrieLayout>::Hash as Hasher>::Out
Return the root of the trie.
What is the value of the given key in this trie?
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.
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
Implementations on Foreign Types
impl<'db, L> TrieMut<L> for SecTrieDBMut<'db, L> where
L: TrieLayout,
impl<'db, L> TrieMut<L> for SecTrieDBMut<'db, L> where
L: TrieLayout,
pub fn root(&mut self) -> &<<L as TrieLayout>::Hash as Hasher>::Out
pub fn contains(
&self,
key: &[u8]
) -> Result<bool, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>>
pub fn get<'a, 'key>(
&'a self,
key: &'key [u8]
) -> Result<Option<Vec<u8, Global>>, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>> where
'a: 'key,
impl<'a, L> TrieMut<L> for TrieDBMut<'a, L> where
L: TrieLayout,
impl<'a, L> TrieMut<L> for TrieDBMut<'a, L> where
L: TrieLayout,
pub fn root(&mut self) -> &<<L as TrieLayout>::Hash as Hasher>::Out
pub fn get<'x, 'key>(
&'x self,
key: &'key [u8]
) -> Result<Option<Vec<u8, Global>>, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>> where
'x: 'key,
impl<'db, L> TrieMut<L> for FatDBMut<'db, L> where
L: TrieLayout,
impl<'db, L> TrieMut<L> for FatDBMut<'db, L> where
L: TrieLayout,
pub fn root(&mut self) -> &<<L as TrieLayout>::Hash as Hasher>::Out
pub fn contains(
&self,
key: &[u8]
) -> Result<bool, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>>
pub fn get<'a, 'key>(
&'a self,
key: &'key [u8]
) -> Result<Option<Vec<u8, Global>>, Box<TrieError<<<L as TrieLayout>::Hash as Hasher>::Out, <<L as TrieLayout>::Codec as NodeCodec>::Error>, Global>> where
'a: 'key,