[][src]Struct dinotree::VistrMut

pub struct VistrMut<'a, T: HasAabb> { /* fields omitted */ }

Tree Iterator that returns a reference to each node. It also returns the non-leaf specific data when it applies.

Methods

impl<'a, T: HasAabb> VistrMut<'a, T>
[src]

pub fn create_wrap_mut(&mut self) -> VistrMut<T>
[src]

It is safe to borrow the iterator and then produce mutable references from that as long as by the time the borrow ends, all the produced references also go away.

pub fn height(&self) -> usize
[src]

pub fn get_nodes_mut(&mut self) -> &mut [Node<T>]
[src]

Methods from Deref<Target = Vistr<'a, T>>

pub fn create_wrap(&self) -> Vistr<T>
[src]

It is safe to borrow the iterator and then produce mutable references from that as long as by the time the borrow ends, all the produced references also go away.

pub fn height(&self) -> usize
[src]

pub fn get_nodes(&self) -> &[Node<T>]
[src]

Trait Implementations

impl<'a, T: HasAabb> Deref for VistrMut<'a, T>
[src]

type Target = Vistr<'a, T>

The resulting type after dereferencing.

impl<'a, T: HasAabb> Visitor for VistrMut<'a, T>
[src]

type Item = NodeRefMut<'a, T>

The common item produced for both leafs and non leafs.

fn with_depth(self, start_depth: Depth) -> LevelIter<Self>
[src]

Iterator Adapter to also produce the depth each iteration.

fn zip<F>(self, f: F) -> Zip<Self, F> where
    F: Visitor
[src]

Combine two tree visitors.

fn map<B, F>(self, func: F) -> Map<Self, F> where
    F: Fn(Self::Item) -> B, 
[src]

Map iterator adapter

fn take(self, num: usize) -> Take<Self>
[src]

Only produce children up to num.

fn flip(self) -> Flip<Self>
[src]

Flips left and right children.

Important traits for BfsIter<C>
fn bfs_iter(self) -> BfsIter<Self>
[src]

Provides an iterator that returns each element in bfs order.

Important traits for DfsPreOrderIter<C>
fn dfs_preorder_iter(self) -> DfsPreOrderIter<Self>
[src]

Provides a dfs preorder iterator. Unlike the callback version, This one relies on dynamic allocation for its stack. Read more

Important traits for DfsInOrderIter<C>
fn dfs_inorder_iter(self) -> DfsInOrderIter<Self>
[src]

fn dfs_inorder<impl FnMut(Self::Item)>(self, func: impl FnMut(Self::Item)) where
    impl FnMut(Self::Item): FnMut(Self::Item), 
[src]

Calls the closure in dfs preorder (left,right,root). Takes advantage of the callstack to do dfs. Read more

fn dfs_postorder<impl FnMut(Self::Item)>(self, func: impl FnMut(Self::Item)) where
    impl FnMut(Self::Item): FnMut(Self::Item), 
[src]

Calls the closure in dfs preorder (left,right,root). Takes advantage of the callstack to do dfs. Read more

impl<'a, T: HasAabb> FixedDepthVisitor for VistrMut<'a, T>
[src]

Auto Trait Implementations

impl<'a, T> Send for VistrMut<'a, T> where
    T: Send,
    <T as HasAabb>::Num: Send

impl<'a, T> Sync for VistrMut<'a, T> where
    T: Sync,
    <T as HasAabb>::Num: Sync

Blanket Implementations

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

impl<T> From for T
[src]

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

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

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

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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