[][src]Enum slab_tree::behaviors::RemoveBehavior

pub enum RemoveBehavior {
    DropChildren,
    OrphanChildren,
}

Describes all the possible ways to remove a Node from a Tree.

Variants

DropChildren

All children of the removed Node will be dropped from the Tree. All children (and all Nodes in each of their sub-trees) will no longer exist in the Tree after this operation.

This is slower than OrphanChildren but frees up space inside the Tree.

OrphanChildren

All children of the removed Node will be left in the Tree (still accessible via NodeIds). However, each child (and their sub-trees) will no longer be connected to the rest of the Nodes in the Tree.

Orphaned nodes will live in the Tree until they are manually removed or until the Tree is Dropped. This is faster than DropChildren but doesn't free up any space inside the Tree.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.