[][src]Struct broccoli::analyze::TreeBuilder

pub struct TreeBuilder<'a, A: Axis, T> { /* fields omitted */ }

Builder pattern for Tree. For most usecases, the user is suggested to use the built in new() functions to create the tree. This is provided in cases the user wants more control on the behavior of the tree for benching and debuging purposes.

Implementations

impl<'a, A: Axis, T: Aabb + Send + Sync> TreeBuilder<'a, A, T>[src]

pub fn build_not_sorted_par(&mut self) -> NotSorted<'a, A, T>[src]

Build not sorted in parallel

pub fn build_par(&mut self) -> Tree<'a, A, T>[src]

Build in parallel

impl<'a, T: Aabb> TreeBuilder<'a, DefaultA, T>[src]

pub fn new(bots: &'a mut [T]) -> TreeBuilder<'a, DefaultA, T>[src]

Create a new builder with a slice of elements that implement Aabb.

impl<'a, A: Axis, T: Aabb> TreeBuilder<'a, A, T>[src]

pub fn with_axis(axis: A, bots: &'a mut [T]) -> TreeBuilder<'a, A, T>[src]

Create a new builder with a slice of elements that implement Aabb.

pub fn build_not_sorted_seq(&mut self) -> NotSorted<'a, A, T>[src]

Build not sorted sequentially

pub fn build_seq(&mut self) -> Tree<'a, A, T>[src]

Build sequentially

pub fn with_bin_strat(&mut self, strat: BinStrat) -> &mut Self[src]

pub fn with_height(&mut self, height: usize) -> &mut Self[src]

pub fn with_height_switch_seq(&mut self, height: usize) -> &mut Self[src]

Choose the height at which to switch from parallel to sequential. If you end up building sequentially, this argument is ignored.

pub fn build_with_splitter_seq<S: Splitter>(
    &mut self,
    splitter: &mut S
) -> Tree<'a, A, T>
[src]

Build with a Splitter.

Auto Trait Implementations

impl<'a, A, T> RefUnwindSafe for TreeBuilder<'a, A, T> where
    A: RefUnwindSafe,
    T: RefUnwindSafe

impl<'a, A, T> Send for TreeBuilder<'a, A, T> where
    T: Send

impl<'a, A, T> Sync for TreeBuilder<'a, A, T> where
    T: Sync

impl<'a, A, T> Unpin for TreeBuilder<'a, A, T> where
    A: Unpin

impl<'a, A, T> !UnwindSafe for TreeBuilder<'a, A, T>

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.