pub struct MerkleSearchTree<K: MerkleKey> { /* private fields */ }Implementations§
Source§impl<K: MerkleKey> MerkleSearchTree<K>
impl<K: MerkleKey> MerkleSearchTree<K>
Sourcepub fn open<P: AsRef<Path>>(path: P) -> Result<Self>
pub fn open<P: AsRef<Path>>(path: P) -> Result<Self>
Opens or creates a file-backed Merkle Search Tree at the given path.
Sourcepub fn new_temporary() -> Result<Self>
pub fn new_temporary() -> Result<Self>
Creates a new MST backed by a temporary file. The file is automatically deleted when the program exits or the tree is dropped.
Sourcepub fn load_from_root<P: AsRef<Path>>(
path: P,
root_offset: u64,
root_hash: Hash,
) -> Result<Self>
pub fn load_from_root<P: AsRef<Path>>( path: P, root_offset: u64, root_hash: Hash, ) -> Result<Self>
Loads a tree from a known root offset and hash.
Sourcepub fn insert(&mut self, key: K) -> Result<()>
pub fn insert(&mut self, key: K) -> Result<()>
Inserts a key into the tree, modifying it in-place.
Sourcepub fn flush(&mut self) -> Result<(u64, Hash)>
pub fn flush(&mut self) -> Result<(u64, Hash)>
Persists any dirty nodes to disk and updates the root to point to the disk location.
pub fn root_hash(&self) -> Hash
Auto Trait Implementations§
impl<K> Freeze for MerkleSearchTree<K>
impl<K> RefUnwindSafe for MerkleSearchTree<K>where
K: RefUnwindSafe,
impl<K> Send for MerkleSearchTree<K>
impl<K> Sync for MerkleSearchTree<K>
impl<K> Unpin for MerkleSearchTree<K>
impl<K> UnwindSafe for MerkleSearchTree<K>where
K: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more