[][src]Trait slice_group_by::GroupBy

pub trait GroupBy<T, P> where
    P: FnMut(&T, &T) -> bool
{ fn linear_group_by(&self, predicate: P) -> LinearGroupBy<T, P>;
fn binary_group_by(&self, predicate: P) -> BinaryGroupBy<T, P>;
fn exponential_group_by(&self, predicate: P) -> ExponentialGroupBy<T, P>; }

A convenient trait to construct an iterator returning non-overlapping groups defined by a predicate.

Required methods

Important traits for LinearGroupBy<'a, T, P>
fn linear_group_by(&self, predicate: P) -> LinearGroupBy<T, P>

Returns an iterator on slice groups using the linear search method.

Important traits for BinaryGroupBy<'a, T, P>
fn binary_group_by(&self, predicate: P) -> BinaryGroupBy<T, P>

Returns an iterator on slice groups using the binary search method.

The predicate function should implement an order consistent with the sort order of the slice.

Important traits for ExponentialGroupBy<'a, T, P>
fn exponential_group_by(&self, predicate: P) -> ExponentialGroupBy<T, P>

Returns an iterator on slice groups using the exponential search method.

The predicate function should implement an order consistent with the sort order of the slice.

Loading content...

Implementations on Foreign Types

impl<T, P> GroupBy<T, P> for [T] where
    P: FnMut(&T, &T) -> bool
[src]

Loading content...

Implementors

Loading content...