pub struct Tree<E> { /* private fields */ }Expand description
A flash-sympathetic persistent lock-free B+ tree.
Implementations§
Source§impl<E> Tree<E>where
E: Encryption,
impl<E> Tree<E>where
E: Encryption,
pub fn get<K: AsRef<[u8]>>(&self, key: K) -> Result<Option<IVec>>
pub fn insert<K, V>(&self, key: K, value: V) -> Result<Option<IVec>>
pub fn remove<K: AsRef<[u8]>>(&self, key: K) -> Result<Option<IVec>>
pub fn apply_batch(&self, batch: Batch) -> Result<()>
pub fn transaction<F, A, Error>(&self, f: F) -> TransactionResult<A, Error>
pub fn watch_prefix<P: AsRef<[u8]>>(&self, prefix: P) -> Result<Subscriber<E>>
pub fn compare_and_swap<K, OV, NV>( &self, key: K, old: Option<OV>, new: Option<NV>, ) -> Result<Result<(), CompareAndSwapError>>
pub fn update_and_fetch<K, V, F>(&self, key: K, f: F) -> Result<Option<IVec>>
pub fn fetch_and_update<K, V, F>(&self, key: K, f: F) -> Result<Option<IVec>>
pub fn flush(&self) -> Result<usize>
pub async fn flush_async(&self) -> Result<usize>
pub fn contains_key<K: AsRef<[u8]>>(&self, key: K) -> Result<bool>
pub fn get_lt<K>(&self, key: K) -> Result<Option<(IVec, IVec)>>
pub fn get_gt<K>(&self, key: K) -> Result<Option<(IVec, IVec)>>
pub fn first(&self) -> Result<Option<(IVec, IVec)>>
pub fn last(&self) -> Result<Option<(IVec, IVec)>>
pub fn pop_min(&self) -> Result<Option<(IVec, IVec)>>
pub fn pop_max(&self) -> Result<Option<(IVec, IVec)>>
pub fn iter(&self) -> Iter<E> ⓘ
pub fn range<K, R>(&self, range: R) -> Result<Iter<E>>
pub fn scan_prefix<P>(&self, prefix: P) -> Result<Iter<E>>
pub fn len(&self) -> usize
pub fn is_empty(&self) -> bool
pub fn clear(&self) -> Result<()>
pub fn name(&self) -> Result<IVec>
pub fn checksum(&self) -> Result<u32>
Trait Implementations§
Auto Trait Implementations§
impl<E> Freeze for Tree<E>
impl<E> !RefUnwindSafe for Tree<E>
impl<E> Send for Tree<E>
impl<E> Sync for Tree<E>
impl<E> Unpin for Tree<E>
impl<E> !UnwindSafe for Tree<E>
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