Struct packed_streaming_iterator::MapRefAnd
source · pub struct MapRefAnd<I, F, R: 'static, T> { /* private fields */ }
Expand description
Iterator adapter to map to a combination of a reference into the original Iterator and also a new object.
see Streaming::map_ref_and
Trait Implementations§
source§impl<I, F, R: 'static, T> StreamingIterator for MapRefAnd<I, F, R, T>
impl<I, F, R: 'static, T> StreamingIterator for MapRefAnd<I, F, R, T>
source§fn get(&self) -> Option<&Self::Item>
fn get(&self) -> Option<&Self::Item>
Returns a reference to the current element of the iterator. Read more
source§fn next(&mut self) -> Option<&Self::Item>
fn next(&mut self) -> Option<&Self::Item>
Advances the iterator and returns the next value. Read more
source§fn size_hint(&self) -> (usize, Option<usize>)
fn size_hint(&self) -> (usize, Option<usize>)
Returns the bounds on the remaining length of the iterator.
source§fn all<F>(&mut self, f: F) -> bool
fn all<F>(&mut self, f: F) -> bool
Determines if all elements of the iterator satisfy a predicate.
source§fn any<F>(&mut self, f: F) -> bool
fn any<F>(&mut self, f: F) -> bool
Determines if any elements of the iterator satisfy a predicate.
source§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Borrows an iterator, rather than consuming it. Read more
source§fn chain<I>(self, other: I) -> Chain<Self, I>
fn chain<I>(self, other: I) -> Chain<Self, I>
Consumes two iterators and returns a new iterator that iterates over both in sequence.
source§fn count(self) -> usizewhere
Self: Sized,
fn count(self) -> usizewhere
Self: Sized,
Consumes the iterator, counting the number of remaining elements and returning it.
source§fn filter<F>(self, f: F) -> Filter<Self, F>
fn filter<F>(self, f: F) -> Filter<Self, F>
Creates an iterator which uses a closure to determine if an element should be yielded.
source§fn filter_map<B, F>(self, f: F) -> FilterMap<Self, B, F>
fn filter_map<B, F>(self, f: F) -> FilterMap<Self, B, F>
Creates an iterator which both filters and maps by applying a closure to elements.
source§fn flat_map<J, F>(self, f: F) -> FlatMap<Self, J, F>
fn flat_map<J, F>(self, f: F) -> FlatMap<Self, J, F>
Creates an iterator which flattens iterators obtained by applying a closure to elements.
Note that the returned iterators must be streaming iterators.
source§fn filter_map_deref<B, F>(self, f: F) -> FilterMapDeref<Self, F>
fn filter_map_deref<B, F>(self, f: F) -> FilterMapDeref<Self, F>
Creates a regular, non-streaming iterator which both filters and maps by applying a closure to elements.
source§fn find<F>(&mut self, f: F) -> Option<&Self::Item>
fn find<F>(&mut self, f: F) -> Option<&Self::Item>
Returns the first element of the iterator that satisfies the predicate.
source§fn fuse(self) -> Fuse<Self>where
Self: Sized,
fn fuse(self) -> Fuse<Self>where
Self: Sized,
Creates an iterator which is “well behaved” at the beginning and end of iteration. Read more
source§fn inspect<F>(self, f: F) -> Inspect<Self, F>
fn inspect<F>(self, f: F) -> Inspect<Self, F>
Call a closure on each element, passing the element on.
The closure is called upon calls to
advance
or advance_back
, and exactly once per element
regardless of how many times (if any) get
is called.source§fn map<B, F>(self, f: F) -> Map<Self, B, F>
fn map<B, F>(self, f: F) -> Map<Self, B, F>
Creates an iterator which transforms elements of this iterator by passing them to a closure.
source§fn map_deref<B, F>(self, f: F) -> MapDeref<Self, F>
fn map_deref<B, F>(self, f: F) -> MapDeref<Self, F>
Creates a regular, non-streaming iterator which transforms elements of this iterator by passing them to a closure.
source§fn map_ref<B, F>(self, f: F) -> MapRef<Self, F>
fn map_ref<B, F>(self, f: F) -> MapRef<Self, F>
Creates an iterator which transforms elements of this iterator by passing them to a closure. Read more
source§fn nth(&mut self, n: usize) -> Option<&Self::Item>
fn nth(&mut self, n: usize) -> Option<&Self::Item>
Consumes the first
n
elements of the iterator, returning the next one.source§fn position<F>(&mut self, f: F) -> Option<usize>
fn position<F>(&mut self, f: F) -> Option<usize>
Returns the index of the first element of the iterator matching a predicate.
source§fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
Creates an iterator which skips the first
n
elements.source§fn skip_while<F>(self, f: F) -> SkipWhile<Self, F>
fn skip_while<F>(self, f: F) -> SkipWhile<Self, F>
Creates an iterator that skips initial elements matching a predicate.
source§fn take(self, n: usize) -> Take<Self>where
Self: Sized,
fn take(self, n: usize) -> Take<Self>where
Self: Sized,
Creates an iterator which only returns the first
n
elements.source§fn take_while<F>(self, f: F) -> TakeWhile<Self, F>
fn take_while<F>(self, f: F) -> TakeWhile<Self, F>
Creates an iterator which only returns initial elements matching a predicate.
Auto Trait Implementations§
impl<I, F, R, T> RefUnwindSafe for MapRefAnd<I, F, R, T>
impl<I, F, R, T> Send for MapRefAnd<I, F, R, T>
impl<I, F, R, T> Sync for MapRefAnd<I, F, R, T>
impl<I, F, R, T> Unpin for MapRefAnd<I, F, R, T>
impl<I, F, R, T> UnwindSafe for MapRefAnd<I, F, R, T>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<I> Streaming for Iwhere
I: StreamingIterator,
impl<I> Streaming for Iwhere
I: StreamingIterator,
source§fn enumerate(self) -> Enumerate<Self>
fn enumerate(self) -> Enumerate<Self>
Creates a StreamingIterator that gives the current iteration count and Item. Read more
source§fn zip<J: StreamingIterator>(self, j: J) -> Zip<Self, J>
fn zip<J: StreamingIterator>(self, j: J) -> Zip<Self, J>
‘Zips up’ two streaming iterators into a single streaming iterator of pairs. Read more
source§fn map_ref_and<F, R, T>(self, f: F) -> MapRefAnd<Self, F, R, T>
fn map_ref_and<F, R, T>(self, f: F) -> MapRefAnd<Self, F, R, T>
Maps a streaming iterator over one type to one over another by applying a closure. Read more
source§fn map_mut_and<F, R, T>(self, f: F) -> MapMutRefAnd<Self, F, R, T>
fn map_mut_and<F, R, T>(self, f: F) -> MapMutRefAnd<Self, F, R, T>
source§fn combinations_with<'a, J, F>(
&'a mut self,
f: F
) -> MutRefAnd<'a, Self, Combinations<J, F>>where
J: StreamingIterator,
F: FnMut() -> J,
fn combinations_with<'a, J, F>(
&'a mut self,
f: F
) -> MutRefAnd<'a, Self, Combinations<J, F>>where
J: StreamingIterator,
F: FnMut() -> J,
Streaming iterator over all pairs of one Item from
self
and one from a second iterator generated by a function.source§fn inner_combinations<T, F, S>(
self,
target: T,
f: F,
stack: S
) -> InnerCombinations<T, F, S>
fn inner_combinations<T, F, S>( self, target: T, f: F, stack: S ) -> InnerCombinations<T, F, S>
Streaming iterator adapter to find selections of items from one cloneable streaming iterator. Read more
source§fn cfilter<F: FnMut(&Self::Item) -> bool>(self, f: F) -> CFilter<Self, F>
fn cfilter<F: FnMut(&Self::Item) -> bool>(self, f: F) -> CFilter<Self, F>
A copy of
StreamingIterator::filter
where the output derives Clone
source§fn cmap<F: FnMut(&Self::Item) -> B, B>(self, f: F) -> CMap<Self, F, B>
fn cmap<F: FnMut(&Self::Item) -> B, B>(self, f: F) -> CMap<Self, F, B>
A copy of
StreamingIterator::map
where the output derives Clone