Enum charcoal::traversal::VisitorDirection[][src]

pub enum VisitorDirection<C: Clone + Debug + Eq, V> {
    Parent,
    NextSibling,
    Child(u32),
    SetTo(C),
    Stop(V),
}

The direction in which a visitor wishes to go after visiting a node.

Variants

Parent

Visit the parent of the node which has been visited.

NextSibling

Visit the sibling of the node which has been visited.

Child(u32)

Visit the n-th child of the node which has been visited.

SetTo(C)

Visit a specific cursor.

Used when the traversable cannot figure out where to go on its own, for example if a visitor removes the node it was on.

Stop(V)

Stop the execution of the algorithm, producing a final value.

Trait Implementations

impl<C: Clone + Debug + Eq, V: Clone> Clone for VisitorDirection<C, V>[src]

impl<C: Copy + Clone + Debug + Eq, V: Copy> Copy for VisitorDirection<C, V>[src]

impl<C: Debug + Clone + Eq, V: Debug> Debug for VisitorDirection<C, V>[src]

impl<C: Eq + Clone + Debug, V: Eq> Eq for VisitorDirection<C, V>[src]

impl<C: Hash + Clone + Debug + Eq, V: Hash> Hash for VisitorDirection<C, V>[src]

impl<C: PartialEq + Clone + Debug + Eq, V: PartialEq> PartialEq<VisitorDirection<C, V>> for VisitorDirection<C, V>[src]

impl<C: Clone + Debug + Eq, V> StructuralEq for VisitorDirection<C, V>[src]

impl<C: Clone + Debug + Eq, V> StructuralPartialEq for VisitorDirection<C, V>[src]

Auto Trait Implementations

impl<C, V> RefUnwindSafe for VisitorDirection<C, V> where
    C: RefUnwindSafe,
    V: RefUnwindSafe

impl<C, V> Send for VisitorDirection<C, V> where
    C: Send,
    V: Send

impl<C, V> Sync for VisitorDirection<C, V> where
    C: Sync,
    V: Sync

impl<C, V> Unpin for VisitorDirection<C, V> where
    C: Unpin,
    V: Unpin

impl<C, V> UnwindSafe for VisitorDirection<C, V> where
    C: UnwindSafe,
    V: UnwindSafe

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> Slottable for T where
    T: Copy
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.