Trait stdcli::prelude::itertools::__std_iter::FusedIterator
[−]
[src]
pub trait FusedIterator: Iterator { }
🔬 This is a nightly-only experimental API. (
fused
)An iterator that always continues to yield None
when exhausted.
Calling next on a fused iterator that has returned None
once is guaranteed
to return None
again. This trait should be implemented by all iterators
that behave this way because it allows for some significant optimizations.
Note: In general, you should not use FusedIterator
in generic bounds if
you need a fused iterator. Instead, you should just call Iterator::fuse
on the iterator. If the iterator is already fused, the additional Fuse
wrapper will be a no-op with no performance penalty.
Implementations on Foreign Types
impl<'a, T> FusedIterator for Iter<'a, T>
[src]
impl<'a> FusedIterator for Bytes<'a>
[src]
impl<'a, P> FusedIterator for SplitN<'a, P> where
P: Pattern<'a>,
[src]
P: Pattern<'a>,
impl<'a> FusedIterator for CharIndices<'a>
[src]
impl<'a, T, P> FusedIterator for RSplit<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<'a, T, P> FusedIterator for RSplitN<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<'a, T, P> FusedIterator for RSplitNMut<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<'a, P> FusedIterator for MatchIndices<'a, P> where
P: Pattern<'a>,
[src]
P: Pattern<'a>,
impl<'a, A> FusedIterator for Iter<'a, A>
[src]
impl<'a, P> FusedIterator for RSplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
[src]
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
impl<A> FusedIterator for RangeFrom<A> where
A: Step,
[src]
A: Step,
impl<'a, T, P> FusedIterator for Split<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<T> FusedIterator for IntoIter<T>
[src]
impl FusedIterator for EscapeDefault
[src]
impl<'a> FusedIterator for LinesAny<'a>
[src]
impl<'a> FusedIterator for Chars<'a>
[src]
impl<'a, P> FusedIterator for SplitTerminator<'a, P> where
P: Pattern<'a>,
[src]
P: Pattern<'a>,
impl<'a, T> FusedIterator for Chunks<'a, T>
[src]
impl<'a, T> FusedIterator for Iter<'a, T>
[src]
impl FusedIterator for EscapeDebug
[src]
impl<'a, I> FusedIterator for &'a mut I where
I: FusedIterator + ?Sized,
[src]
I: FusedIterator + ?Sized,
impl<A> FusedIterator for IntoIter<A>
[src]
impl<'a, P> FusedIterator for Matches<'a, P> where
P: Pattern<'a>,
[src]
P: Pattern<'a>,
impl<'a, P> FusedIterator for RMatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
[src]
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
impl<'a, A> FusedIterator for IterMut<'a, A>
[src]
impl<'a, T> FusedIterator for Windows<'a, T>
[src]
impl<'a, T, P> FusedIterator for SplitNMut<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<A> FusedIterator for Range<A> where
A: Step,
[src]
A: Step,
impl<'a, T> FusedIterator for ChunksMut<'a, T>
[src]
impl<'a, P> FusedIterator for RMatches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
[src]
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
impl<'a, T, P> FusedIterator for SplitN<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<'a, T, P> FusedIterator for SplitMut<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<I> FusedIterator for DecodeUtf8<I> where
I: FusedIterator<Item = u8>,
[src]
I: FusedIterator<Item = u8>,
impl<'a> FusedIterator for Lines<'a>
[src]
impl<'a, T> FusedIterator for IterMut<'a, T>
[src]
impl<A> FusedIterator for RangeInclusive<A> where
A: Step,
[src]
A: Step,
impl<'a, T> FusedIterator for IterMut<'a, T>
[src]
impl FusedIterator for EscapeUnicode
[src]
impl<'a, P> FusedIterator for RSplit<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
[src]
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
impl<'a, P> FusedIterator for Split<'a, P> where
P: Pattern<'a>,
[src]
P: Pattern<'a>,
impl<'a, T, P> FusedIterator for RSplitMut<'a, T, P> where
P: FnMut(&T) -> bool,
[src]
P: FnMut(&T) -> bool,
impl<'a, P> FusedIterator for RSplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
[src]
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
impl<I> FusedIterator for Box<I> where
I: FusedIterator + ?Sized,
[src]
I: FusedIterator + ?Sized,
impl<T> FusedIterator for IntoIter<T>
[src]
impl<'a, K, V> FusedIterator for RangeMut<'a, K, V>
[src]
impl<'a, T> FusedIterator for Drain<'a, T>
[src]
impl<T> FusedIterator for IntoIter<T>
[src]
impl<T> FusedIterator for IntoIter<T>
[src]
impl<'a, T> FusedIterator for Drain<'a, T> where
T: 'a,
[src]
T: 'a,
impl<'a> FusedIterator for Drain<'a>
[src]
impl<'a, T> FusedIterator for Drain<'a, T> where
T: 'a,
[src]
T: 'a,
impl<'a, T> FusedIterator for Union<'a, T> where
T: Ord,
[src]
T: Ord,
impl<'a, T> FusedIterator for Iter<'a, T>
[src]
impl<'a, T> FusedIterator for Range<'a, T>
[src]
impl<'a, T> FusedIterator for IterMut<'a, T>
[src]
impl<'a, T> FusedIterator for Iter<'a, T>
[src]
impl<T> FusedIterator for IntoIter<T>
[src]
impl<'a> FusedIterator for EncodeUtf16<'a>
[src]
impl<'a, K, V> FusedIterator for Keys<'a, K, V>
[src]
impl<'a, K, V> FusedIterator for ValuesMut<'a, K, V>
[src]
impl<'a, T> FusedIterator for Difference<'a, T> where
T: Ord,
[src]
T: Ord,
impl<K, V> FusedIterator for IntoIter<K, V>
[src]
impl<'a, T> FusedIterator for IterMut<'a, T>
[src]
impl<'a, T> FusedIterator for Intersection<'a, T> where
T: Ord,
[src]
T: Ord,
impl<'a, K, V> FusedIterator for Iter<'a, K, V>
[src]
impl<'a, T> FusedIterator for Iter<'a, T>
[src]
impl<'a, T> FusedIterator for Iter<'a, T>
[src]
impl<T> FusedIterator for IntoIter<T>
[src]
impl<'a, K, V> FusedIterator for Range<'a, K, V>
[src]
impl<'a, T> FusedIterator for SymmetricDifference<'a, T> where
T: Ord,
[src]
T: Ord,
impl<'a, K, V> FusedIterator for Values<'a, K, V>
[src]
impl<'a, K, V> FusedIterator for IterMut<'a, K, V>
[src]
impl<'a, T, S> FusedIterator for Union<'a, T, S> where
S: BuildHasher,
T: Eq + Hash,
[src]
S: BuildHasher,
T: Eq + Hash,
impl<'a, K, V> FusedIterator for Iter<'a, K, V>
[src]
impl<'a, K> FusedIterator for Iter<'a, K>
[src]
impl<'a, T, S> FusedIterator for SymmetricDifference<'a, T, S> where
S: BuildHasher,
T: Eq + Hash,
[src]
S: BuildHasher,
T: Eq + Hash,
impl<K> FusedIterator for IntoIter<K>
[src]
impl<'a, T, S> FusedIterator for Intersection<'a, T, S> where
S: BuildHasher,
T: Eq + Hash,
[src]
S: BuildHasher,
T: Eq + Hash,
impl<'a, K, V> FusedIterator for Drain<'a, K, V>
[src]
impl<'a> FusedIterator for Components<'a>
[src]
impl<'a, K, V> FusedIterator for Keys<'a, K, V>
[src]
impl<'a> FusedIterator for Iter<'a>
[src]
impl<'a, T, S> FusedIterator for Difference<'a, T, S> where
S: BuildHasher,
T: Eq + Hash,
[src]
S: BuildHasher,
T: Eq + Hash,
impl<'a, K, V> FusedIterator for IterMut<'a, K, V>
[src]
impl<'a, K, V> FusedIterator for Values<'a, K, V>
[src]
impl FusedIterator for EscapeDefault
[src]
impl<K, V> FusedIterator for IntoIter<K, V>
[src]
impl<'a, K, V> FusedIterator for ValuesMut<'a, K, V>
[src]
impl<'a, K> FusedIterator for Drain<'a, K>
[src]
impl FusedIterator for ToLowercase
[src]
impl<I> FusedIterator for Utf16Encoder<I> where
I: FusedIterator<Item = char>,
[src]
I: FusedIterator<Item = char>,
impl<'a> FusedIterator for SplitWhitespace<'a>
[src]
impl FusedIterator for ToUppercase
[src]
Implementors
impl<I> FusedIterator for Rev<I> where
I: FusedIterator + DoubleEndedIterator,impl<I, F> FusedIterator for Inspect<I, F> where
F: FnMut(&<I as Iterator>::Item) -> (),
I: FusedIterator,impl<I> FusedIterator for Cycle<I> where
I: Clone + Iterator,impl<I> FusedIterator for Take<I> where
I: FusedIterator,impl<I, P> FusedIterator for SkipWhile<I, P> where
I: FusedIterator,
P: FnMut(&<I as Iterator>::Item) -> bool,impl<B, I, F> FusedIterator for Map<I, F> where
F: FnMut(<I as Iterator>::Item) -> B,
I: FusedIterator,impl<I> FusedIterator for Enumerate<I> where
I: FusedIterator,impl<I, U, F> FusedIterator for FlatMap<I, U, F> where
F: FnMut(<I as Iterator>::Item) -> U,
I: FusedIterator,
U: IntoIterator,impl<B, I, F> FusedIterator for FilterMap<I, F> where
F: FnMut(<I as Iterator>::Item) -> Option<B>,
I: FusedIterator,impl<A, B> FusedIterator for Zip<A, B> where
A: FusedIterator,
B: FusedIterator,impl<I> FusedIterator for Fuse<I> where
I: Iterator,impl<A> FusedIterator for Repeat<A> where
A: Clone,impl<T> FusedIterator for Empty<T>
impl<I, P> FusedIterator for Filter<I, P> where
I: FusedIterator,
P: FnMut(&<I as Iterator>::Item) -> bool,impl<I> FusedIterator for Skip<I> where
I: FusedIterator,impl<'a, I, T> FusedIterator for Cloned<I> where
I: FusedIterator<Item = &'a T>,
T: 'a + Clone,impl<I, P> FusedIterator for TakeWhile<I, P> where
I: FusedIterator,
P: FnMut(&<I as Iterator>::Item) -> bool,impl<A, B> FusedIterator for Chain<A, B> where
A: FusedIterator,
B: FusedIterator<Item = <A as Iterator>::Item>,impl<T> FusedIterator for Once<T>
impl<I> FusedIterator for Peekable<I> where
I: FusedIterator,