[−][src]Struct rtable::tree::Tree
Tree struct.
Methods
impl<P: Prefixable, D> Tree<P, D>
[src]
Tree impl.
pub fn new() -> Tree<P, D>
[src]
Constructor.
pub fn top(&self) -> Option<Rc<Node<P, D>>>
[src]
Return top node.
pub fn count(&self) -> usize
[src]
Return count with data.
ⓘImportant traits for NodeIterator<P, D>pub fn get_node(&mut self, prefix: &P) -> NodeIterator<P, D>
[src]
ⓘImportant traits for NodeIterator<P, D>
Get node with given prefix, create one if it doesn't exist.
pub fn insert(&mut self, prefix: &P, data: D) -> bool
[src]
Insert data with given prefix, and return:
- false if data already exist with the prefix.
- true if successfully inserted the data.
pub fn update(&mut self, prefix: &P, data: D) -> Option<D>
[src]
Update data with given prefix, and return:
- old data if data exists and successfully replace.
- None if data does not exist, and replace does not occur.
pub fn upsert(&mut self, prefix: &P, data: D) -> Option<D>
[src]
Insert if data does not exist, or Update, and return:
- old data if data exists and successfully replace.
- None if data does not exist.
pub fn delete(&mut self, prefix: &P) -> Option<D>
[src]
Delete data with the prefix if data exist, and return:
- old data if data exists and successfully delete.
- None if data does not exist.
ⓘImportant traits for NodeIterator<P, D>pub fn lookup_exact(&self, prefix: &P) -> NodeIterator<P, D>
[src]
ⓘImportant traits for NodeIterator<P, D>
Perform exact match lookup.
ⓘImportant traits for NodeIterator<P, D>pub fn lookup(&self, prefix: &P) -> NodeIterator<P, D>
[src]
ⓘImportant traits for NodeIterator<P, D>
Perform longest match lookup.
ⓘImportant traits for NodeIterator<P, D>pub fn erase(&mut self, it: NodeIterator<P, D>) -> NodeIterator<P, D>
[src]
ⓘImportant traits for NodeIterator<P, D>
Erase a node from tree, and return iterator for next node.
ⓘImportant traits for NodeIterator<P, D>pub fn node_iter(&self) -> NodeIterator<P, D>
[src]
ⓘImportant traits for NodeIterator<P, D>
Return node iterator.
Trait Implementations
impl<'_, P: Prefixable, D> IntoIterator for &'_ Tree<P, D>
[src]
Tree IntoIterator.
Auto Trait Implementations
impl<P, D> !Send for Tree<P, D>
impl<P, D> Unpin for Tree<P, D>
impl<P, D> !Sync for Tree<P, D>
impl<P, D> !RefUnwindSafe for Tree<P, D>
impl<P, D> !UnwindSafe for Tree<P, D>
Blanket Implementations
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.
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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,