pub struct TrieDBMutBuilder<'db, L: TrieLayout> { /* private fields */ }Expand description
A builder for creating a TrieDBMut.
Implementations§
Source§impl<'db, L: TrieLayout> TrieDBMutBuilder<'db, L>
impl<'db, L: TrieLayout> TrieDBMutBuilder<'db, L>
Sourcepub fn new(
db: &'db mut dyn HashDB<L::Hash, DBValue>,
root: &'db mut TrieHash<L>,
) -> Self
pub fn new( db: &'db mut dyn HashDB<L::Hash, DBValue>, root: &'db mut TrieHash<L>, ) -> Self
Create a builder for constructing a new trie with the backing database db and empty
root.
Sourcepub fn from_existing(
db: &'db mut dyn HashDB<L::Hash, DBValue>,
root: &'db mut TrieHash<L>,
) -> Self
pub fn from_existing( db: &'db mut dyn HashDB<L::Hash, DBValue>, root: &'db mut TrieHash<L>, ) -> Self
Create a builder for constructing a new trie with the backing database db and root.
This doesn’t check if root exists in the given db. If root doesn’t exist it will fail
when trying to lookup any key.
Sourcepub fn with_cache(self, cache: &'db mut dyn TrieCache<L::Codec>) -> Self
pub fn with_cache(self, cache: &'db mut dyn TrieCache<L::Codec>) -> Self
Use the given cache for the db.
Sourcepub fn with_optional_cache<'cache: 'db>(
self,
cache: Option<&'cache mut dyn TrieCache<L::Codec>>,
) -> Self
pub fn with_optional_cache<'cache: 'db>( self, cache: Option<&'cache mut dyn TrieCache<L::Codec>>, ) -> Self
Use the given optional cache for the db.
Sourcepub fn with_recorder(
self,
recorder: &'db mut dyn TrieRecorder<TrieHash<L>>,
) -> Self
pub fn with_recorder( self, recorder: &'db mut dyn TrieRecorder<TrieHash<L>>, ) -> Self
Use the given recorder to record trie accesses.
Sourcepub fn with_optional_recorder<'recorder: 'db>(
self,
recorder: Option<&'recorder mut dyn TrieRecorder<TrieHash<L>>>,
) -> Self
pub fn with_optional_recorder<'recorder: 'db>( self, recorder: Option<&'recorder mut dyn TrieRecorder<TrieHash<L>>>, ) -> Self
Use the given optional recorder to record trie accesses.
Sourcepub fn disable_commit_on_drop(self) -> Self
pub fn disable_commit_on_drop(self) -> Self
Disable automatic commit on drop.
By default, TrieDBMut automatically commits changes when dropped. Calling this method
disables that behavior, requiring explicit calls to TrieDBMut::commit to persist
changes to the database.
This is useful when you want fine-grained control over when changes are committed, or when you want to avoid the performance cost of committing if you’re just doing temporary operations.
Sourcepub fn build(self) -> TrieDBMut<'db, L>
pub fn build(self) -> TrieDBMut<'db, L>
Build the TrieDBMut.
By default, the returned trie will automatically commit changes when dropped. Use
disable_commit_on_drop to disable this behavior.