Trait iterator_ext::IteratorExt [−][src]
pub trait IteratorExt { fn try_scan<St, F, T, U, E>(self, init: St, f: F) -> TryScan<Self, St, F>ⓘ
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(&mut St, T) -> Result<Option<U>, E>, { ... } fn try_flat_map<F, T, U, V, E>(
self,
f: F
) -> TryFlatMap<Self, F, U::IntoIter>ⓘNotable traits for TryFlatMap<I, F, J>
impl<I, F, J, T, U, V, E> Iterator for TryFlatMap<I, F, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = V>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = V, IntoIter = J>, type Item = Result<V, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = V>, { ... } fn try_flatten<T, U, E>(self) -> TryFlatten<Self, T::IntoIter>ⓘNotable traits for TryFlatten<I, J>
impl<I, J, T, U, E> Iterator for TryFlatten<I, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = U>,
T: IntoIterator<Item = U, IntoIter = J>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
T: IntoIterator<Item = U>, { ... } fn try_flat_map_results<F, T, U, V, E>(
self,
f: F
) -> TryFlatMapResults<Self, F, U::IntoIter>ⓘNotable traits for TryFlatMapResults<I, F, J>
impl<I, F, J, T, U, V, E> Iterator for TryFlatMapResults<I, F, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = Result<V, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = Result<V, E>, IntoIter = J>, type Item = Result<V, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = Result<V, E>>, { ... } fn try_flatten_results<T, U, E>(
self
) -> TryFlattenResults<Self, T::IntoIter>ⓘNotable traits for TryFlattenResults<I, J>
impl<I, J, T, U, E> Iterator for TryFlattenResults<I, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = Result<U, E>>,
T: IntoIterator<Item = Result<U, E>, IntoIter = J>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
T: IntoIterator<Item = Result<U, E>>, { ... } fn try_filter<F, T, E>(self, f: F) -> TryFilter<Self, F>ⓘ
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(&T) -> Result<bool, E>, { ... } fn try_filter_map<F, T, U, E>(self, f: F) -> TryFilterMap<Self, F>ⓘNotable traits for TryFilterMap<I, F>
impl<I, T, U, E, F> Iterator for TryFilterMap<I, F> where
I: Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<Option<U>, E>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<Option<U>, E>, { ... } fn map_err<F, Ein, Eout>(self, f: F) -> MapErr<Self, F>ⓘ
where
Self: Sized,
F: FnMut(Ein) -> Eout, { ... } fn and_then<F, T, U, E>(self, f: F) -> AndThen<Self, F>ⓘ
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<U, E>, { ... } }
Expand description
An extension trait to Iterator
Provided methods
fn try_flat_map<F, T, U, V, E>(self, f: F) -> TryFlatMap<Self, F, U::IntoIter>ⓘNotable traits for TryFlatMap<I, F, J>
impl<I, F, J, T, U, V, E> Iterator for TryFlatMap<I, F, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = V>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = V, IntoIter = J>, type Item = Result<V, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = V>,
[src]
fn try_flat_map<F, T, U, V, E>(self, f: F) -> TryFlatMap<Self, F, U::IntoIter>ⓘNotable traits for TryFlatMap<I, F, J>
impl<I, F, J, T, U, V, E> Iterator for TryFlatMap<I, F, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = V>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = V, IntoIter = J>, type Item = Result<V, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = V>,
[src]Creates a fallible iterator that works like map, but flattens nested structure.
fn try_flatten<T, U, E>(self) -> TryFlatten<Self, T::IntoIter>ⓘNotable traits for TryFlatten<I, J>
impl<I, J, T, U, E> Iterator for TryFlatten<I, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = U>,
T: IntoIterator<Item = U, IntoIter = J>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
T: IntoIterator<Item = U>,
[src]
fn try_flatten<T, U, E>(self) -> TryFlatten<Self, T::IntoIter>ⓘNotable traits for TryFlatten<I, J>
impl<I, J, T, U, E> Iterator for TryFlatten<I, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = U>,
T: IntoIterator<Item = U, IntoIter = J>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
T: IntoIterator<Item = U>,
[src]Creates a fallible iterator that flattens nested structure.
fn try_flat_map_results<F, T, U, V, E>(
self,
f: F
) -> TryFlatMapResults<Self, F, U::IntoIter>ⓘNotable traits for TryFlatMapResults<I, F, J>
impl<I, F, J, T, U, V, E> Iterator for TryFlatMapResults<I, F, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = Result<V, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = Result<V, E>, IntoIter = J>, type Item = Result<V, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = Result<V, E>>,
[src]
fn try_flat_map_results<F, T, U, V, E>(
self,
f: F
) -> TryFlatMapResults<Self, F, U::IntoIter>ⓘNotable traits for TryFlatMapResults<I, F, J>
impl<I, F, J, T, U, V, E> Iterator for TryFlatMapResults<I, F, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = Result<V, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = Result<V, E>, IntoIter = J>, type Item = Result<V, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<U, E>,
U: IntoIterator<Item = Result<V, E>>,
[src]Similar to try_flat_map, but flattens nested results.
fn try_flatten_results<T, U, E>(self) -> TryFlattenResults<Self, T::IntoIter>ⓘNotable traits for TryFlattenResults<I, J>
impl<I, J, T, U, E> Iterator for TryFlattenResults<I, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = Result<U, E>>,
T: IntoIterator<Item = Result<U, E>, IntoIter = J>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
T: IntoIterator<Item = Result<U, E>>,
[src]
fn try_flatten_results<T, U, E>(self) -> TryFlattenResults<Self, T::IntoIter>ⓘNotable traits for TryFlattenResults<I, J>
impl<I, J, T, U, E> Iterator for TryFlattenResults<I, J> where
I: Iterator<Item = Result<T, E>>,
J: Iterator<Item = Result<U, E>>,
T: IntoIterator<Item = Result<U, E>, IntoIter = J>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
T: IntoIterator<Item = Result<U, E>>,
[src]Similar to try_flatten, but flattens nested results.
Creates a fallible iterator that filters items.
fn try_filter_map<F, T, U, E>(self, f: F) -> TryFilterMap<Self, F>ⓘNotable traits for TryFilterMap<I, F>
impl<I, T, U, E, F> Iterator for TryFilterMap<I, F> where
I: Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<Option<U>, E>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<Option<U>, E>,
[src]
fn try_filter_map<F, T, U, E>(self, f: F) -> TryFilterMap<Self, F>ⓘNotable traits for TryFilterMap<I, F>
impl<I, T, U, E, F> Iterator for TryFilterMap<I, F> where
I: Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<Option<U>, E>, type Item = Result<U, E>;
where
Self: Sized + Iterator<Item = Result<T, E>>,
F: FnMut(T) -> Result<Option<U>, E>,
[src]Creates a fallible iterator that both filters and maps.
Maps a Result<T, E>
to Result<T, F>
by applying a function to a contained Err value, leaving an Ok value untouched.