pub struct TreeTraverser<K, V>{ /* private fields */ }
Expand description

Contains data for traversing a ‘tree’.

Implementations§

source§

impl<K, V> TreeTraverser<K, V>

TreeTraverser functions

source

pub fn new() -> Self

Creates a new empty ‘tree traverser’.

Trait Implementations§

source§

impl<K, V> RevTraverser<K> for TreeTraverser<K, V>

source§

fn has_prev(&self) -> bool

Returns true if this ‘traverser’ has a previous ‘node’ to traverse to according to the ‘tree traversal mode’ this ‘tree traverser’ is using. If there is no previous ‘node’, None is returned.

source§

fn prev(&mut self) -> Option<Self::Item>

Traverses to and returns the previous ‘node’ according to the ‘tree traversal mode’ this ‘tree traverser’ is using. If there is no previous ‘node’, None is returned.

source§

impl<K, V> Traverser<K> for TreeTraverser<K, V>

§

type Item = V

Item type.

source§

fn has_next(&self) -> bool

Returns true if this ‘traverser’ has a next ‘node’ to traverse to according to the ‘tree traversal mode’ this ‘tree traverser’ is using. If there is no next ‘node’, None is returned.

source§

fn next(&mut self) -> Option<Self::Item>

Traverses to and returns the next ‘node’ according to the ‘tree traversal mode’ this ‘tree traverser’ is using. If there is no next ‘node’, None is returned.

source§

impl<K, V> TreeCollectionTraverser<K> for TreeTraverser<K, V>

source§

fn inorder(&mut self)

Sets the ‘tree traversal mode’ of this ‘tree collection traverser’ to follow inorder traversal. This is the default ‘tree traversal mode’.

source§

fn level_order(&mut self)

Sets the ‘tree traversal mode’ of this ‘tree collection traverse’ to follow level order traversal.

source§

fn postorder(&mut self)

Sets the ‘tree traversal mode’ of this ‘tree collection traverser’ to follow postorder traversal.

source§

fn preorder(&mut self)

Sets the ‘tree traversal mode’ of this ‘tree collection traverser’ to follow preorder traversal.

Auto Trait Implementations§

§

impl<K, V> RefUnwindSafe for TreeTraverser<K, V>

§

impl<K, V> Send for TreeTraverser<K, V>
where K: Send, V: Send,

§

impl<K, V> Sync for TreeTraverser<K, V>
where K: Sync, V: Sync,

§

impl<K, V> Unpin for TreeTraverser<K, V>
where K: Unpin, V: Unpin,

§

impl<K, V> UnwindSafe for TreeTraverser<K, V>
where K: UnwindSafe, V: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.