Struct trie_db::sectriedb::SecTrieDB [−][src]
A Trie
implementation which hashes keys and uses a generic HashDB
backing database.
Use it as a Trie
trait object. You can use raw()
to get the backing TrieDB
object.
Implementations
impl<'db, L> SecTrieDB<'db, L> where
L: TrieLayout,
[src]
L: TrieLayout,
pub fn new(
db: &'db dyn HashDBRef<L::Hash, DBValue>,
root: &'db TrieHash<L>
) -> Result<Self, TrieHash<L>, CError<L>>
[src]
db: &'db dyn HashDBRef<L::Hash, DBValue>,
root: &'db TrieHash<L>
) -> Result<Self, TrieHash<L>, CError<L>>
Create a new trie with the backing database db
and empty root
Initialise to the state entailed by the genesis block. This guarantees the trie is built correctly. Returns an error if root does not exist.
pub fn raw(&self) -> &TrieDB<'_, L>
[src]
Get a reference to the underlying raw TrieDB
struct.
pub fn raw_mut(&mut self) -> &mut TrieDB<'db, L>
[src]
Get a mutable reference to the underlying raw TrieDB
struct.
Trait Implementations
impl<'db, L> Trie<L> for SecTrieDB<'db, L> where
L: TrieLayout,
[src]
L: TrieLayout,
fn root(&self) -> &TrieHash<L>
[src]
fn contains(&self, key: &[u8]) -> Result<bool, TrieHash<L>, CError<L>>
[src]
fn get_with<'a, 'key, Q: Query<L::Hash>>(
&'a self,
key: &'key [u8],
query: Q
) -> Result<Option<Q::Item>, TrieHash<L>, CError<L>> where
'a: 'key,
[src]
&'a self,
key: &'key [u8],
query: Q
) -> Result<Option<Q::Item>, TrieHash<L>, CError<L>> where
'a: 'key,
fn iter<'a>(
&'a self
) -> Result<Box<dyn TrieIterator<L, Item = TrieItem<'_, TrieHash<L>, CError<L>>> + 'a>, TrieHash<L>, CError<L>>
[src]
&'a self
) -> Result<Box<dyn TrieIterator<L, Item = TrieItem<'_, TrieHash<L>, CError<L>>> + 'a>, TrieHash<L>, CError<L>>
fn is_empty(&self) -> bool
[src]
fn get<'a, 'key>(
&'a self,
key: &'key [u8]
) -> Result<Option<DBValue>, TrieHash<L>, CError<L>> where
'a: 'key,
[src]
&'a self,
key: &'key [u8]
) -> Result<Option<DBValue>, TrieHash<L>, CError<L>> where
'a: 'key,
Auto Trait Implementations
impl<'db, L> !RefUnwindSafe for SecTrieDB<'db, L>
impl<'db, L> !Send for SecTrieDB<'db, L>
impl<'db, L> !Sync for SecTrieDB<'db, L>
impl<'db, L> Unpin for SecTrieDB<'db, L>
impl<'db, L> !UnwindSafe for SecTrieDB<'db, L>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut Tⓘ
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,