Trait itertools::PeekingNext
[−]
[src]
pub trait PeekingNext: Iterator {
fn peeking_next<F>(&mut self, accept: F) -> Option<Self::Item>
where
F: FnOnce(&Self::Item) -> bool;
}An iterator that allows peeking at an element before deciding to accept it.
See .peeking_take_while()
for more information.
This is implemented by peeking adaptors like peekable and put back,
but also by a few iterators that can be peeked natively, like the slice’s
by reference iterator (std::slice::Iter).
Required Methods
fn peeking_next<F>(&mut self, accept: F) -> Option<Self::Item> where
F: FnOnce(&Self::Item) -> bool,
F: FnOnce(&Self::Item) -> bool,
Pass a reference to the next iterator element to the closure accept;
if accept returns true, return it as the next element,
else None.
Implementors
impl<I> PeekingNext for Peekable<I> where
I: Iterator,impl<I> PeekingNext for PutBack<I> where
I: Iterator,impl<I> PeekingNext for PutBackN<I> where
I: Iterator,impl<'a, T> PeekingNext for core::slice::Iter<'a, T>impl<'a> PeekingNext for Chars<'a>impl<'a> PeekingNext for CharIndices<'a>impl<'a> PeekingNext for Bytes<'a>impl<'a, T> PeekingNext for core::option::Iter<'a, T>impl<'a, T> PeekingNext for core::result::Iter<'a, T>impl<T> PeekingNext for Empty<T>impl<'a, T> PeekingNext for alloc::linked_list::Iter<'a, T>impl<'a, T> PeekingNext for alloc::vec_deque::Iter<'a, T>impl<I: Clone + PeekingNext + DoubleEndedIterator> PeekingNext for Rev<I>