Trait rin::ecs::streaming_iterator::DoubleEndedStreamingIteratorMut [−][src]
pub trait DoubleEndedStreamingIteratorMut: DoubleEndedStreamingIterator + StreamingIteratorMut { pub fn next_back_mut(&mut self) -> Option<&mut Self::Item> { ... } pub fn rfold_mut<B, F>(self, init: B, f: F) -> B
where
F: FnMut(B, &mut Self::Item) -> B, { ... } }
A mutable streaming iterator able to yield elements from both ends.
Provided methods
pub fn next_back_mut(&mut self) -> Option<&mut Self::Item>
[src]
Advances the iterator and returns the next mutable value from the back.
The behavior of calling this method after the end of the iterator has been reached is unspecified.
The default implementation simply calls advance_back
followed by get_mut
.
pub fn rfold_mut<B, F>(self, init: B, f: F) -> B where
F: FnMut(B, &mut Self::Item) -> B,
[src]
F: FnMut(B, &mut Self::Item) -> B,
Reduces the iterator’s mutable elements to a single, final value, starting from the back.
Implementors
impl<'a, I, T> DoubleEndedStreamingIteratorMut for ConvertMut<'a, I, T> where
T: ?Sized,
I: DoubleEndedIterator<Item = &'a mut T>,
[src]
impl<'a, I, T> DoubleEndedStreamingIteratorMut for ConvertMut<'a, I, T> where
T: ?Sized,
I: DoubleEndedIterator<Item = &'a mut T>,
[src]pub fn rfold_mut<B, F>(self, init: B, f: F) -> B where
F: FnMut(B, &mut <ConvertMut<'a, I, T> as StreamingIterator>::Item) -> B,
ConvertMut<'a, I, T>: Sized,
[src]
F: FnMut(B, &mut <ConvertMut<'a, I, T> as StreamingIterator>::Item) -> B,
ConvertMut<'a, I, T>: Sized,
impl<A, B> DoubleEndedStreamingIteratorMut for Chain<A, B> where
B: DoubleEndedStreamingIteratorMut<Item = <A as StreamingIterator>::Item>,
A: DoubleEndedStreamingIteratorMut,
[src]
impl<A, B> DoubleEndedStreamingIteratorMut for Chain<A, B> where
B: DoubleEndedStreamingIteratorMut<Item = <A as StreamingIterator>::Item>,
A: DoubleEndedStreamingIteratorMut,
[src]impl<I> DoubleEndedStreamingIteratorMut for Convert<I> where
I: DoubleEndedIterator,
[src]
impl<I> DoubleEndedStreamingIteratorMut for Convert<I> where
I: DoubleEndedIterator,
[src]impl<I> DoubleEndedStreamingIteratorMut for Rev<I> where
I: DoubleEndedStreamingIteratorMut,
[src]
impl<I> DoubleEndedStreamingIteratorMut for Rev<I> where
I: DoubleEndedStreamingIteratorMut,
[src]impl<I, B, F> DoubleEndedStreamingIteratorMut for FilterMap<I, B, F> where
F: FnMut(&<I as StreamingIterator>::Item) -> Option<B>,
I: DoubleEndedStreamingIterator,
[src]
impl<I, B, F> DoubleEndedStreamingIteratorMut for FilterMap<I, B, F> where
F: FnMut(&<I as StreamingIterator>::Item) -> Option<B>,
I: DoubleEndedStreamingIterator,
[src]impl<I, B, F> DoubleEndedStreamingIteratorMut for Map<I, B, F> where
F: FnMut(&<I as StreamingIterator>::Item) -> B,
I: DoubleEndedStreamingIterator,
[src]
impl<I, B, F> DoubleEndedStreamingIteratorMut for Map<I, B, F> where
F: FnMut(&<I as StreamingIterator>::Item) -> B,
I: DoubleEndedStreamingIterator,
[src]impl<I, F> DoubleEndedStreamingIteratorMut for Filter<I, F> where
F: FnMut(&<I as StreamingIterator>::Item) -> bool,
I: DoubleEndedStreamingIteratorMut,
[src]
impl<I, F> DoubleEndedStreamingIteratorMut for Filter<I, F> where
F: FnMut(&<I as StreamingIterator>::Item) -> bool,
I: DoubleEndedStreamingIteratorMut,
[src]impl<I, F> DoubleEndedStreamingIteratorMut for Inspect<I, F> where
F: FnMut(&<I as StreamingIterator>::Item),
I: DoubleEndedStreamingIteratorMut,
[src]
impl<I, F> DoubleEndedStreamingIteratorMut for Inspect<I, F> where
F: FnMut(&<I as StreamingIterator>::Item),
I: DoubleEndedStreamingIteratorMut,
[src]impl<T> DoubleEndedStreamingIteratorMut for Empty<T>
[src]
impl<T> DoubleEndedStreamingIteratorMut for Once<T>
[src]
impl<T> DoubleEndedStreamingIteratorMut for Repeat<T>
[src]
impl<T, F> DoubleEndedStreamingIteratorMut for OnceWith<T, F> where
F: FnOnce() -> T,
[src]
F: FnOnce() -> T,