Struct audio_processor_testing_helpers::charts::Histogram
source · [−]pub struct Histogram<'a, BR, A, Tag = Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default,
Tag: HistogramType,{ /* private fields */ }
Expand description
Presents data in a histogram. Input data can be raw or aggregated.
Examples
use plotters::prelude::*;
let data = [1, 1, 2, 2, 1, 3, 3, 2, 2, 1, 1, 2, 2, 2, 3, 3, 1, 2, 3];
let drawing_area = SVGBackend::new("histogram_vertical.svg", (300, 200)).into_drawing_area();
drawing_area.fill(&WHITE).unwrap();
let mut chart_builder = ChartBuilder::on(&drawing_area);
chart_builder.margin(5).set_left_and_bottom_label_area_size(20);
let mut chart_context = chart_builder.build_cartesian_2d((1..3).into_segmented(), 0..9).unwrap();
chart_context.configure_mesh().draw().unwrap();
chart_context.draw_series(Histogram::vertical(&chart_context).style(BLUE.filled()).margin(10)
.data(data.map(|x| (x, 1)))).unwrap();
The result is a histogram counting the occurrences of 1, 2, and 3 in data
:
Here is a variation with Histogram::horizontal()
, replacing (1..3).into_segmented(), 0..9
with
0..9, (1..3).into_segmented()
:
The spacing between histogram bars is adjusted with Histogram::margin()
.
Here is a version of the figure where .margin(10)
has been replaced by .margin(20)
;
the resulting bars are narrow and more spaced:
crate::coord::ranged1d::IntoSegmentedCoord::into_segmented()
is useful for discrete data; it makes sure the histogram bars
are centered on each data value. Here is another variation with (1..3).into_segmented()
replaced by 1..4
:
Histogram::style()
sets the style of the bars. Here is a histogram without .filled()
:
The following version uses Histogram::style_func()
for finer control. Let’s replace .style(BLUE.filled())
with
.style_func(|x, _bar_height| if let SegmentValue::Exact(v) = x {[BLACK, RED, GREEN, BLUE][*v as usize].filled()} else {BLACK.filled()})
.
The resulting bars come in different colors:
Histogram::baseline()
adjusts the base of the bars. The following figure adds .baseline(1)
to the right of .margin(10)
. The lower portion of the bars are removed:
The following figure uses Histogram::baseline_func()
for finer control. Let’s add
.baseline_func(|x| if let SegmentValue::Exact(v) = x {*v as i32} else {0})
to the right of .margin(10)
. The lower portion of the bars are removed; the removed portion is taller
to the right:
Implementations
sourceimpl<'a, BR, A, Tag> Histogram<'a, BR, A, Tag>where
BR: DiscreteRanged + Clone,
A: 'a + AddAssign<A> + Default,
Tag: HistogramType,
impl<'a, BR, A, Tag> Histogram<'a, BR, A, Tag>where
BR: DiscreteRanged + Clone,
A: 'a + AddAssign<A> + Default,
Tag: HistogramType,
sourcepub fn style<S>(self, style: S) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
S: Into<ShapeStyle>,
pub fn style<S>(self, style: S) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
S: Into<ShapeStyle>,
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Sets the style of the histogram bars.
See Histogram
for more information and examples.
sourcepub fn style_func(
self,
style_func: impl Fn(&<BR as Ranged>::ValueType, &A) -> ShapeStyle + 'a
) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
pub fn style_func(
self,
style_func: impl Fn(&<BR as Ranged>::ValueType, &A) -> ShapeStyle + 'a
) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Sets the style of histogram using a closure.
The closure takes the position of the bar in guest coordinates as argument.
The argument may need some processing if the data range has been transformed by
crate::coord::ranged1d::IntoSegmentedCoord::into_segmented()
as shown in the Histogram
example.
sourcepub fn baseline(self, baseline: A) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
A: Clone,
pub fn baseline(self, baseline: A) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
A: Clone,
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Sets the baseline of the histogram.
See Histogram
for more information and examples.
sourcepub fn baseline_func(
self,
func: impl Fn(&<BR as Ranged>::ValueType) -> A + 'a
) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
pub fn baseline_func(
self,
func: impl Fn(&<BR as Ranged>::ValueType) -> A + 'a
) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Sets the histogram bar baselines using a closure.
The closure takes the bar position and height as argument.
The argument may need some processing if the data range has been transformed by
crate::coord::ranged1d::IntoSegmentedCoord::into_segmented()
as shown in the Histogram
example.
sourcepub fn margin(self, value: u32) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
pub fn margin(self, value: u32) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Sets the margin for each bar, in backend pixels.
See Histogram
for more information and examples.
sourcepub fn data<TB, I>(self, iter: I) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
TB: Into<<BR as Ranged>::ValueType>,
I: IntoIterator<Item = (TB, A)>,
pub fn data<TB, I>(self, iter: I) -> Histogram<'a, BR, A, Tag>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
TB: Into<<BR as Ranged>::ValueType>,
I: IntoIterator<Item = (TB, A)>,
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Specifies the input data for the histogram through an appropriate data iterator.
See Histogram
for more information and examples.
sourceimpl<'a, BR, A> Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged + Clone,
A: 'a + AddAssign<A> + Default,
impl<'a, BR, A> Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged + Clone,
A: 'a + AddAssign<A> + Default,
sourcepub fn vertical<ACoord, DB>(
parent: &ChartContext<'_, DB, Cartesian2d<BR, ACoord>>
) -> Histogram<'a, BR, A, Vertical>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
DB: 'a + DrawingBackend,
ACoord: Ranged<ValueType = A>,
pub fn vertical<ACoord, DB>(
parent: &ChartContext<'_, DB, Cartesian2d<BR, ACoord>>
) -> Histogram<'a, BR, A, Vertical>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
DB: 'a + DrawingBackend,
ACoord: Ranged<ValueType = A>,
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Creates a vertical histogram.
See Histogram
for more information and examples.
sourceimpl<'a, BR, A> Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged + Clone,
A: 'a + AddAssign<A> + Default,
impl<'a, BR, A> Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged + Clone,
A: 'a + AddAssign<A> + Default,
sourcepub fn horizontal<ACoord, DB>(
parent: &ChartContext<'_, DB, Cartesian2d<ACoord, BR>>
) -> Histogram<'a, BR, A, Horizontal>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
DB: DrawingBackend,
ACoord: Ranged<ValueType = A>,
pub fn horizontal<ACoord, DB>(
parent: &ChartContext<'_, DB, Cartesian2d<ACoord, BR>>
) -> Histogram<'a, BR, A, Horizontal>ⓘNotable traits for Histogram<'a, BR, A, Horizontal>impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
where
DB: DrawingBackend,
ACoord: Ranged<ValueType = A>,
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(A, <BR as Ranged>::ValueType)>;impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default, type Item = Rectangle<(<BR as Ranged>::ValueType, A)>;
Creates a horizontal histogram.
See Histogram
for more information and examples.
Trait Implementations
sourceimpl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default,
impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Horizontal>where
BR: DiscreteRanged,
A: AddAssign<A> + Default,
sourcefn next(
&mut self
) -> Option<<Histogram<'a, BR, A, Horizontal> as Iterator>::Item>
fn next(
&mut self
) -> Option<<Histogram<'a, BR, A, Horizontal> as Iterator>::Item>
sourcefn next_chunk<const N: usize>(
&mut self
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>
fn next_chunk<const N: usize>(
&mut self
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>
iter_next_chunk
)N
values. Read more1.0.0 · sourcefn size_hint(&self) -> (usize, Option<usize>)
fn size_hint(&self) -> (usize, Option<usize>)
1.0.0 · sourcefn count(self) -> usize
fn count(self) -> usize
1.0.0 · sourcefn last(self) -> Option<Self::Item>
fn last(self) -> Option<Self::Item>
sourcefn advance_by(&mut self, n: usize) -> Result<(), usize>
fn advance_by(&mut self, n: usize) -> Result<(), usize>
iter_advance_by
)n
elements. Read more1.0.0 · sourcefn nth(&mut self, n: usize) -> Option<Self::Item>
fn nth(&mut self, n: usize) -> Option<Self::Item>
n
th element of the iterator. Read more1.28.0 · sourcefn step_by(self, step: usize) -> StepBy<Self>
fn step_by(self, step: usize) -> StepBy<Self>
1.0.0 · sourcefn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator<Item = Self::Item>,
fn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator<Item = Self::Item>,
1.0.0 · sourcefn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator,
fn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator,
sourcefn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G>where
G: FnMut() -> Self::Item,
fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G>where
G: FnMut() -> Self::Item,
iter_intersperse
)separator
between adjacent items of the original iterator. Read more1.0.0 · sourcefn map<B, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> B,
fn map<B, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> B,
1.21.0 · sourcefn for_each<F>(self, f: F)where
F: FnMut(Self::Item),
fn for_each<F>(self, f: F)where
F: FnMut(Self::Item),
1.0.0 · sourcefn filter<P>(self, predicate: P) -> Filter<Self, P>where
P: FnMut(&Self::Item) -> bool,
fn filter<P>(self, predicate: P) -> Filter<Self, P>where
P: FnMut(&Self::Item) -> bool,
1.0.0 · sourcefn filter_map<B, F>(self, f: F) -> FilterMap<Self, F>where
F: FnMut(Self::Item) -> Option<B>,
fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F>where
F: FnMut(Self::Item) -> Option<B>,
1.0.0 · sourcefn enumerate(self) -> Enumerate<Self>
fn enumerate(self) -> Enumerate<Self>
1.0.0 · sourcefn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
1.0.0 · sourcefn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
1.57.0 · sourcefn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P>where
P: FnMut(Self::Item) -> Option<B>,
fn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P>where
P: FnMut(Self::Item) -> Option<B>,
1.0.0 · sourcefn skip(self, n: usize) -> Skip<Self>
fn skip(self, n: usize) -> Skip<Self>
n
elements. Read more1.0.0 · sourcefn take(self, n: usize) -> Take<Self>
fn take(self, n: usize) -> Take<Self>
n
elements, or fewer
if the underlying iterator ends sooner. Read more1.0.0 · sourcefn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where
F: FnMut(&mut St, Self::Item) -> Option<B>,
fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where
F: FnMut(&mut St, Self::Item) -> Option<B>,
1.0.0 · sourcefn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
U: IntoIterator,
F: FnMut(Self::Item) -> U,
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
U: IntoIterator,
F: FnMut(Self::Item) -> U,
1.0.0 · sourcefn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
fn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
1.0.0 · sourcefn by_ref(&mut self) -> &mut Self
fn by_ref(&mut self) -> &mut Self
1.0.0 · sourcefn collect<B>(self) -> Bwhere
B: FromIterator<Self::Item>,
fn collect<B>(self) -> Bwhere
B: FromIterator<Self::Item>,
sourcefn collect_into<E>(self, collection: &mut E) -> &mut Ewhere
E: Extend<Self::Item>,
fn collect_into<E>(self, collection: &mut E) -> &mut Ewhere
E: Extend<Self::Item>,
iter_collect_into
)1.0.0 · sourcefn partition<B, F>(self, f: F) -> (B, B)where
B: Default + Extend<Self::Item>,
F: FnMut(&Self::Item) -> bool,
fn partition<B, F>(self, f: F) -> (B, B)where
B: Default + Extend<Self::Item>,
F: FnMut(&Self::Item) -> bool,
sourcefn is_partitioned<P>(self, predicate: P) -> boolwhere
P: FnMut(Self::Item) -> bool,
fn is_partitioned<P>(self, predicate: P) -> boolwhere
P: FnMut(Self::Item) -> bool,
iter_is_partitioned
)true
precede all those that return false
. Read more1.27.0 · sourcefn try_fold<B, F, R>(&mut self, init: B, f: F) -> Rwhere
F: FnMut(B, Self::Item) -> R,
R: Try<Output = B>,
fn try_fold<B, F, R>(&mut self, init: B, f: F) -> Rwhere
F: FnMut(B, Self::Item) -> R,
R: Try<Output = B>,
1.27.0 · sourcefn try_for_each<F, R>(&mut self, f: F) -> Rwhere
F: FnMut(Self::Item) -> R,
R: Try<Output = ()>,
fn try_for_each<F, R>(&mut self, f: F) -> Rwhere
F: FnMut(Self::Item) -> R,
R: Try<Output = ()>,
1.0.0 · sourcefn fold<B, F>(self, init: B, f: F) -> Bwhere
F: FnMut(B, Self::Item) -> B,
fn fold<B, F>(self, init: B, f: F) -> Bwhere
F: FnMut(B, Self::Item) -> B,
1.51.0 · sourcefn reduce<F>(self, f: F) -> Option<Self::Item>where
F: FnMut(Self::Item, Self::Item) -> Self::Item,
fn reduce<F>(self, f: F) -> Option<Self::Item>where
F: FnMut(Self::Item, Self::Item) -> Self::Item,
sourcefn try_reduce<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryTypewhere
F: FnMut(Self::Item, Self::Item) -> R,
R: Try<Output = Self::Item>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
fn try_reduce<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryTypewhere
F: FnMut(Self::Item, Self::Item) -> R,
R: Try<Output = Self::Item>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
iterator_try_reduce
)1.0.0 · sourcefn all<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
fn all<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
1.0.0 · sourcefn any<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
fn any<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
1.0.0 · sourcefn find<P>(&mut self, predicate: P) -> Option<Self::Item>where
P: FnMut(&Self::Item) -> bool,
fn find<P>(&mut self, predicate: P) -> Option<Self::Item>where
P: FnMut(&Self::Item) -> bool,
1.30.0 · sourcefn find_map<B, F>(&mut self, f: F) -> Option<B>where
F: FnMut(Self::Item) -> Option<B>,
fn find_map<B, F>(&mut self, f: F) -> Option<B>where
F: FnMut(Self::Item) -> Option<B>,
sourcefn try_find<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryTypewhere
F: FnMut(&Self::Item) -> R,
R: Try<Output = bool>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
fn try_find<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryTypewhere
F: FnMut(&Self::Item) -> R,
R: Try<Output = bool>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
try_find
)1.0.0 · sourcefn position<P>(&mut self, predicate: P) -> Option<usize>where
P: FnMut(Self::Item) -> bool,
fn position<P>(&mut self, predicate: P) -> Option<usize>where
P: FnMut(Self::Item) -> bool,
1.6.0 · sourcefn max_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
fn max_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
1.15.0 · sourcefn max_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
fn max_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
1.6.0 · sourcefn min_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
fn min_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
1.15.0 · sourcefn min_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
fn min_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
1.0.0 · sourcefn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Iterator<Item = (A, B)>,
fn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Iterator<Item = (A, B)>,
1.36.0 · sourcefn copied<'a, T>(self) -> Copied<Self>where
T: 'a + Copy,
Self: Iterator<Item = &'a T>,
fn copied<'a, T>(self) -> Copied<Self>where
T: 'a + Copy,
Self: Iterator<Item = &'a T>,
1.0.0 · sourcefn cloned<'a, T>(self) -> Cloned<Self>where
T: 'a + Clone,
Self: Iterator<Item = &'a T>,
fn cloned<'a, T>(self) -> Cloned<Self>where
T: 'a + Clone,
Self: Iterator<Item = &'a T>,
sourcefn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N>
fn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N>
iter_array_chunks
)N
elements of the iterator at a time. Read more1.11.0 · sourcefn sum<S>(self) -> Swhere
S: Sum<Self::Item>,
fn sum<S>(self) -> Swhere
S: Sum<Self::Item>,
1.11.0 · sourcefn product<P>(self) -> Pwhere
P: Product<Self::Item>,
fn product<P>(self) -> Pwhere
P: Product<Self::Item>,
sourcefn cmp_by<I, F>(self, other: I, cmp: F) -> Orderingwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Ordering,
fn cmp_by<I, F>(self, other: I, cmp: F) -> Orderingwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Ordering,
iter_order_by
)Iterator
with those
of another with respect to the specified comparison function. Read more1.5.0 · sourcefn partial_cmp<I>(self, other: I) -> Option<Ordering>where
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn partial_cmp<I>(self, other: I) -> Option<Ordering>where
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
sourcefn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
fn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
iter_order_by
)Iterator
with those
of another with respect to the specified comparison function. Read more1.5.0 · sourcefn eq<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
fn eq<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
sourcefn eq_by<I, F>(self, other: I, eq: F) -> boolwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> bool,
fn eq_by<I, F>(self, other: I, eq: F) -> boolwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> bool,
iter_order_by
)1.5.0 · sourcefn ne<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
fn ne<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
1.5.0 · sourcefn lt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn lt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
less than those of another. Read more1.5.0 · sourcefn le<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn le<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
less or equal to those of another. Read more1.5.0 · sourcefn gt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn gt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
greater than those of another. Read more1.5.0 · sourcefn ge<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn ge<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
greater than or equal to those of another. Read moresourcefn is_sorted_by<F>(self, compare: F) -> boolwhere
F: FnMut(&Self::Item, &Self::Item) -> Option<Ordering>,
fn is_sorted_by<F>(self, compare: F) -> boolwhere
F: FnMut(&Self::Item, &Self::Item) -> Option<Ordering>,
is_sorted
)sourcefn is_sorted_by_key<F, K>(self, f: F) -> boolwhere
F: FnMut(Self::Item) -> K,
K: PartialOrd<K>,
fn is_sorted_by_key<F, K>(self, f: F) -> boolwhere
F: FnMut(Self::Item) -> K,
K: PartialOrd<K>,
is_sorted
)sourceimpl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default,
impl<'a, BR, A> Iterator for Histogram<'a, BR, A, Vertical>where
BR: DiscreteRanged,
A: AddAssign<A> + Default,
sourcefn next(&mut self) -> Option<<Histogram<'a, BR, A, Vertical> as Iterator>::Item>
fn next(&mut self) -> Option<<Histogram<'a, BR, A, Vertical> as Iterator>::Item>
sourcefn next_chunk<const N: usize>(
&mut self
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>
fn next_chunk<const N: usize>(
&mut self
) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>
iter_next_chunk
)N
values. Read more1.0.0 · sourcefn size_hint(&self) -> (usize, Option<usize>)
fn size_hint(&self) -> (usize, Option<usize>)
1.0.0 · sourcefn count(self) -> usize
fn count(self) -> usize
1.0.0 · sourcefn last(self) -> Option<Self::Item>
fn last(self) -> Option<Self::Item>
sourcefn advance_by(&mut self, n: usize) -> Result<(), usize>
fn advance_by(&mut self, n: usize) -> Result<(), usize>
iter_advance_by
)n
elements. Read more1.0.0 · sourcefn nth(&mut self, n: usize) -> Option<Self::Item>
fn nth(&mut self, n: usize) -> Option<Self::Item>
n
th element of the iterator. Read more1.28.0 · sourcefn step_by(self, step: usize) -> StepBy<Self>
fn step_by(self, step: usize) -> StepBy<Self>
1.0.0 · sourcefn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator<Item = Self::Item>,
fn chain<U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator<Item = Self::Item>,
1.0.0 · sourcefn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator,
fn zip<U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter>where
U: IntoIterator,
sourcefn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G>where
G: FnMut() -> Self::Item,
fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G>where
G: FnMut() -> Self::Item,
iter_intersperse
)separator
between adjacent items of the original iterator. Read more1.0.0 · sourcefn map<B, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> B,
fn map<B, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> B,
1.21.0 · sourcefn for_each<F>(self, f: F)where
F: FnMut(Self::Item),
fn for_each<F>(self, f: F)where
F: FnMut(Self::Item),
1.0.0 · sourcefn filter<P>(self, predicate: P) -> Filter<Self, P>where
P: FnMut(&Self::Item) -> bool,
fn filter<P>(self, predicate: P) -> Filter<Self, P>where
P: FnMut(&Self::Item) -> bool,
1.0.0 · sourcefn filter_map<B, F>(self, f: F) -> FilterMap<Self, F>where
F: FnMut(Self::Item) -> Option<B>,
fn filter_map<B, F>(self, f: F) -> FilterMap<Self, F>where
F: FnMut(Self::Item) -> Option<B>,
1.0.0 · sourcefn enumerate(self) -> Enumerate<Self>
fn enumerate(self) -> Enumerate<Self>
1.0.0 · sourcefn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
fn skip_while<P>(self, predicate: P) -> SkipWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
1.0.0 · sourcefn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
fn take_while<P>(self, predicate: P) -> TakeWhile<Self, P>where
P: FnMut(&Self::Item) -> bool,
1.57.0 · sourcefn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P>where
P: FnMut(Self::Item) -> Option<B>,
fn map_while<B, P>(self, predicate: P) -> MapWhile<Self, P>where
P: FnMut(Self::Item) -> Option<B>,
1.0.0 · sourcefn skip(self, n: usize) -> Skip<Self>
fn skip(self, n: usize) -> Skip<Self>
n
elements. Read more1.0.0 · sourcefn take(self, n: usize) -> Take<Self>
fn take(self, n: usize) -> Take<Self>
n
elements, or fewer
if the underlying iterator ends sooner. Read more1.0.0 · sourcefn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where
F: FnMut(&mut St, Self::Item) -> Option<B>,
fn scan<St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F>where
F: FnMut(&mut St, Self::Item) -> Option<B>,
1.0.0 · sourcefn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
U: IntoIterator,
F: FnMut(Self::Item) -> U,
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
U: IntoIterator,
F: FnMut(Self::Item) -> U,
1.0.0 · sourcefn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
fn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
1.0.0 · sourcefn by_ref(&mut self) -> &mut Self
fn by_ref(&mut self) -> &mut Self
1.0.0 · sourcefn collect<B>(self) -> Bwhere
B: FromIterator<Self::Item>,
fn collect<B>(self) -> Bwhere
B: FromIterator<Self::Item>,
sourcefn collect_into<E>(self, collection: &mut E) -> &mut Ewhere
E: Extend<Self::Item>,
fn collect_into<E>(self, collection: &mut E) -> &mut Ewhere
E: Extend<Self::Item>,
iter_collect_into
)1.0.0 · sourcefn partition<B, F>(self, f: F) -> (B, B)where
B: Default + Extend<Self::Item>,
F: FnMut(&Self::Item) -> bool,
fn partition<B, F>(self, f: F) -> (B, B)where
B: Default + Extend<Self::Item>,
F: FnMut(&Self::Item) -> bool,
sourcefn is_partitioned<P>(self, predicate: P) -> boolwhere
P: FnMut(Self::Item) -> bool,
fn is_partitioned<P>(self, predicate: P) -> boolwhere
P: FnMut(Self::Item) -> bool,
iter_is_partitioned
)true
precede all those that return false
. Read more1.27.0 · sourcefn try_fold<B, F, R>(&mut self, init: B, f: F) -> Rwhere
F: FnMut(B, Self::Item) -> R,
R: Try<Output = B>,
fn try_fold<B, F, R>(&mut self, init: B, f: F) -> Rwhere
F: FnMut(B, Self::Item) -> R,
R: Try<Output = B>,
1.27.0 · sourcefn try_for_each<F, R>(&mut self, f: F) -> Rwhere
F: FnMut(Self::Item) -> R,
R: Try<Output = ()>,
fn try_for_each<F, R>(&mut self, f: F) -> Rwhere
F: FnMut(Self::Item) -> R,
R: Try<Output = ()>,
1.0.0 · sourcefn fold<B, F>(self, init: B, f: F) -> Bwhere
F: FnMut(B, Self::Item) -> B,
fn fold<B, F>(self, init: B, f: F) -> Bwhere
F: FnMut(B, Self::Item) -> B,
1.51.0 · sourcefn reduce<F>(self, f: F) -> Option<Self::Item>where
F: FnMut(Self::Item, Self::Item) -> Self::Item,
fn reduce<F>(self, f: F) -> Option<Self::Item>where
F: FnMut(Self::Item, Self::Item) -> Self::Item,
sourcefn try_reduce<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryTypewhere
F: FnMut(Self::Item, Self::Item) -> R,
R: Try<Output = Self::Item>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
fn try_reduce<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryTypewhere
F: FnMut(Self::Item, Self::Item) -> R,
R: Try<Output = Self::Item>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
iterator_try_reduce
)1.0.0 · sourcefn all<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
fn all<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
1.0.0 · sourcefn any<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
fn any<F>(&mut self, f: F) -> boolwhere
F: FnMut(Self::Item) -> bool,
1.0.0 · sourcefn find<P>(&mut self, predicate: P) -> Option<Self::Item>where
P: FnMut(&Self::Item) -> bool,
fn find<P>(&mut self, predicate: P) -> Option<Self::Item>where
P: FnMut(&Self::Item) -> bool,
1.30.0 · sourcefn find_map<B, F>(&mut self, f: F) -> Option<B>where
F: FnMut(Self::Item) -> Option<B>,
fn find_map<B, F>(&mut self, f: F) -> Option<B>where
F: FnMut(Self::Item) -> Option<B>,
sourcefn try_find<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryTypewhere
F: FnMut(&Self::Item) -> R,
R: Try<Output = bool>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
fn try_find<F, R>(
&mut self,
f: F
) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryTypewhere
F: FnMut(&Self::Item) -> R,
R: Try<Output = bool>,
<R as Try>::Residual: Residual<Option<Self::Item>>,
try_find
)1.0.0 · sourcefn position<P>(&mut self, predicate: P) -> Option<usize>where
P: FnMut(Self::Item) -> bool,
fn position<P>(&mut self, predicate: P) -> Option<usize>where
P: FnMut(Self::Item) -> bool,
1.6.0 · sourcefn max_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
fn max_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
1.15.0 · sourcefn max_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
fn max_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
1.6.0 · sourcefn min_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
fn min_by_key<B, F>(self, f: F) -> Option<Self::Item>where
B: Ord,
F: FnMut(&Self::Item) -> B,
1.15.0 · sourcefn min_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
fn min_by<F>(self, compare: F) -> Option<Self::Item>where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
1.0.0 · sourcefn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Iterator<Item = (A, B)>,
fn unzip<A, B, FromA, FromB>(self) -> (FromA, FromB)where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Iterator<Item = (A, B)>,
1.36.0 · sourcefn copied<'a, T>(self) -> Copied<Self>where
T: 'a + Copy,
Self: Iterator<Item = &'a T>,
fn copied<'a, T>(self) -> Copied<Self>where
T: 'a + Copy,
Self: Iterator<Item = &'a T>,
1.0.0 · sourcefn cloned<'a, T>(self) -> Cloned<Self>where
T: 'a + Clone,
Self: Iterator<Item = &'a T>,
fn cloned<'a, T>(self) -> Cloned<Self>where
T: 'a + Clone,
Self: Iterator<Item = &'a T>,
sourcefn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N>
fn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N>
iter_array_chunks
)N
elements of the iterator at a time. Read more1.11.0 · sourcefn sum<S>(self) -> Swhere
S: Sum<Self::Item>,
fn sum<S>(self) -> Swhere
S: Sum<Self::Item>,
1.11.0 · sourcefn product<P>(self) -> Pwhere
P: Product<Self::Item>,
fn product<P>(self) -> Pwhere
P: Product<Self::Item>,
sourcefn cmp_by<I, F>(self, other: I, cmp: F) -> Orderingwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Ordering,
fn cmp_by<I, F>(self, other: I, cmp: F) -> Orderingwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Ordering,
iter_order_by
)Iterator
with those
of another with respect to the specified comparison function. Read more1.5.0 · sourcefn partial_cmp<I>(self, other: I) -> Option<Ordering>where
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn partial_cmp<I>(self, other: I) -> Option<Ordering>where
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
sourcefn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
fn partial_cmp_by<I, F>(self, other: I, partial_cmp: F) -> Option<Ordering>where
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,
iter_order_by
)Iterator
with those
of another with respect to the specified comparison function. Read more1.5.0 · sourcefn eq<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
fn eq<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
sourcefn eq_by<I, F>(self, other: I, eq: F) -> boolwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> bool,
fn eq_by<I, F>(self, other: I, eq: F) -> boolwhere
I: IntoIterator,
F: FnMut(Self::Item, <I as IntoIterator>::Item) -> bool,
iter_order_by
)1.5.0 · sourcefn ne<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
fn ne<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialEq<<I as IntoIterator>::Item>,
1.5.0 · sourcefn lt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn lt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
less than those of another. Read more1.5.0 · sourcefn le<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn le<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
less or equal to those of another. Read more1.5.0 · sourcefn gt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn gt<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
greater than those of another. Read more1.5.0 · sourcefn ge<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
fn ge<I>(self, other: I) -> boolwhere
I: IntoIterator,
Self::Item: PartialOrd<<I as IntoIterator>::Item>,
Iterator
are lexicographically
greater than or equal to those of another. Read moresourcefn is_sorted_by<F>(self, compare: F) -> boolwhere
F: FnMut(&Self::Item, &Self::Item) -> Option<Ordering>,
fn is_sorted_by<F>(self, compare: F) -> boolwhere
F: FnMut(&Self::Item, &Self::Item) -> Option<Ordering>,
is_sorted
)sourcefn is_sorted_by_key<F, K>(self, f: F) -> boolwhere
F: FnMut(Self::Item) -> K,
K: PartialOrd<K>,
fn is_sorted_by_key<F, K>(self, f: F) -> boolwhere
F: FnMut(Self::Item) -> K,
K: PartialOrd<K>,
is_sorted
)