Struct sled::Radix
[−]
[src]
pub struct Radix<T> where
T: 'static + Send + Sync, { /* fields omitted */ }
A simple lock-free radix tree.
Methods
impl<T> Radix<T> where
T: 'static + Send + Sync,
[src]
T: 'static + Send + Sync,
fn insert(&self, pid: usize, item: T) -> Result<(), ()>
[src]
Try to create a new item in the tree.
fn swap<'s>(&self, pid: usize, new: Ptr<'s, T>, scope: &'s Scope) -> Ptr<'s, T>
[src]
Atomically swap the previous value in a tree with a new one.
fn cas<'s>(
&self,
pid: usize,
old: Ptr<'s, T>,
new: Ptr<'s, T>,
scope: &'s Scope
) -> Result<Ptr<'s, T>, Ptr<'s, T>>
[src]
&self,
pid: usize,
old: Ptr<'s, T>,
new: Ptr<'s, T>,
scope: &'s Scope
) -> Result<Ptr<'s, T>, Ptr<'s, T>>
Compare and swap an old value to a new one.
fn get<'s>(&self, pid: usize, scope: &'s Scope) -> Option<Ptr<'s, T>>
[src]
Try to get a value from the tree.
fn del<'s>(&self, pid: usize, scope: &'s Scope) -> Option<Ptr<'s, T>>
[src]
Delete a value from the tree, returning the old value if it was set.
Trait Implementations
impl<T> Default for Radix<T> where
T: 'static + Send + Sync,
[src]
T: 'static + Send + Sync,
impl<T> Drop for Radix<T> where
T: 'static + Send + Sync,
[src]
T: 'static + Send + Sync,