1.26.0[][src]Trait std::iter::FusedIterator

pub trait FusedIterator: Iterator { }

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 optimizing Iterator::fuse.

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<K, V> FusedIterator for IntoIter<K, V>

impl<'_, K> FusedIterator for Drain<'_, K>

impl<'_, T, S> FusedIterator for SymmetricDifference<'_, T, S> where
    S: BuildHasher,
    T: Eq + Hash

impl<'_, T, S> FusedIterator for Union<'_, T, S> where
    S: BuildHasher,
    T: Eq + Hash

impl<'_, K> FusedIterator for Iter<'_, K>

impl<'_, K, V> FusedIterator for Iter<'_, K, V>

impl<'_, K, V> FusedIterator for Keys<'_, K, V>

impl<'_, K, V> FusedIterator for IterMut<'_, K, V>

impl<'_, K, V> FusedIterator for ValuesMut<'_, K, V>

impl<'_, T, S> FusedIterator for Intersection<'_, T, S> where
    S: BuildHasher,
    T: Eq + Hash

impl<'_, K, V> FusedIterator for Drain<'_, K, V>

impl<K> FusedIterator for IntoIter<K>

impl<'_, K, V> FusedIterator for Values<'_, K, V>

impl<'_, T, S> FusedIterator for Difference<'_, T, S> where
    S: BuildHasher,
    T: Eq + Hash

Loading content...

Implementors

impl FusedIterator for std::ascii::EscapeDefault[src]

impl FusedIterator for std::char::EscapeDebug[src]

impl FusedIterator for std::char::EscapeDefault[src]

impl FusedIterator for std::char::EscapeUnicode[src]

impl FusedIterator for ToLowercase[src]

impl FusedIterator for ToUppercase[src]

impl<'_> FusedIterator for Ancestors<'_>[src]

impl<'_> FusedIterator for Components<'_>[src]

impl<'_> FusedIterator for std::path::Iter<'_>[src]

impl<'_> FusedIterator for Bytes<'_>[src]

impl<'_> FusedIterator for CharIndices<'_>[src]

impl<'_> FusedIterator for Chars<'_>[src]

impl<'_> FusedIterator for EncodeUtf16<'_>[src]

impl<'_> FusedIterator for Lines<'_>[src]

impl<'_> FusedIterator for LinesAny<'_>[src]

impl<'_> FusedIterator for SplitAsciiWhitespace<'_>[src]

impl<'_> FusedIterator for SplitWhitespace<'_>[src]

impl<'_> FusedIterator for std::string::Drain<'_>[src]

impl<'_, A> FusedIterator for std::option::Iter<'_, A>[src]

impl<'_, A> FusedIterator for std::option::IterMut<'_, A>[src]

impl<'_, I> FusedIterator for &'_ mut I where
    I: FusedIterator + ?Sized
[src]

impl<'_, K> FusedIterator for std::collections::hash_set::Drain<'_, K>[src]

impl<'_, K> FusedIterator for std::collections::hash_set::Iter<'_, K>[src]

impl<'_, K, V> FusedIterator for std::collections::btree_map::Iter<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::btree_map::IterMut<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::btree_map::Keys<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::btree_map::Range<'_, K, V>[src]

impl<'_, K, V> FusedIterator for RangeMut<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::btree_map::Values<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::btree_map::ValuesMut<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::hash_map::Drain<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::hash_map::Iter<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::hash_map::IterMut<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::hash_map::Keys<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::hash_map::Values<'_, K, V>[src]

impl<'_, K, V> FusedIterator for std::collections::hash_map::ValuesMut<'_, K, V>[src]

impl<'_, T> FusedIterator for std::collections::binary_heap::Drain<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::binary_heap::Iter<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::btree_set::Difference<'_, T> where
    T: Ord
[src]

impl<'_, T> FusedIterator for std::collections::btree_set::Intersection<'_, T> where
    T: Ord
[src]

impl<'_, T> FusedIterator for std::collections::btree_set::Iter<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::btree_set::Range<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::btree_set::SymmetricDifference<'_, T> where
    T: Ord
[src]

impl<'_, T> FusedIterator for std::collections::btree_set::Union<'_, T> where
    T: Ord
[src]

impl<'_, T> FusedIterator for std::collections::linked_list::Iter<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::linked_list::IterMut<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::vec_deque::Drain<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::vec_deque::Iter<'_, T>[src]

impl<'_, T> FusedIterator for std::collections::vec_deque::IterMut<'_, T>[src]

impl<'_, T> FusedIterator for std::result::Iter<'_, T>[src]

impl<'_, T> FusedIterator for std::result::IterMut<'_, T>[src]

impl<'_, T> FusedIterator for Chunks<'_, T>[src]

impl<'_, T> FusedIterator for ChunksExact<'_, T>[src]

impl<'_, T> FusedIterator for ChunksExactMut<'_, T>[src]

impl<'_, T> FusedIterator for ChunksMut<'_, T>[src]

impl<'_, T> FusedIterator for std::slice::Iter<'_, T>[src]

impl<'_, T> FusedIterator for std::slice::IterMut<'_, T>[src]

impl<'_, T> FusedIterator for RChunks<'_, T>[src]

impl<'_, T> FusedIterator for RChunksExact<'_, T>[src]

impl<'_, T> FusedIterator for RChunksExactMut<'_, T>[src]

impl<'_, T> FusedIterator for RChunksMut<'_, T>[src]

impl<'_, T> FusedIterator for Windows<'_, T>[src]

impl<'_, T> FusedIterator for std::vec::Drain<'_, T>[src]

impl<'_, T, P> FusedIterator for std::slice::RSplit<'_, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<'_, T, P> FusedIterator for RSplitMut<'_, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<'_, T, P> FusedIterator for std::slice::Split<'_, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<'_, T, P> FusedIterator for SplitMut<'_, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<'_, T, S> FusedIterator for std::collections::hash_set::Difference<'_, T, S> where
    T: Eq + Hash,
    S: BuildHasher
[src]

impl<'_, T, S> FusedIterator for std::collections::hash_set::Intersection<'_, T, S> where
    T: Eq + Hash,
    S: BuildHasher
[src]

impl<'_, T, S> FusedIterator for std::collections::hash_set::SymmetricDifference<'_, T, S> where
    T: Eq + Hash,
    S: BuildHasher
[src]

impl<'_, T, S> FusedIterator for std::collections::hash_set::Union<'_, T, S> where
    T: Eq + Hash,
    S: BuildHasher
[src]

impl<'a> FusedIterator for std::str::EscapeDebug<'a>[src]

impl<'a> FusedIterator for std::str::EscapeDefault<'a>[src]

impl<'a> FusedIterator for std::str::EscapeUnicode<'a>[src]

impl<'a, I, T> FusedIterator for Cloned<I> where
    I: FusedIterator<Item = &'a T>,
    T: 'a + Clone
[src]

impl<'a, I, T> FusedIterator for Copied<I> where
    I: FusedIterator<Item = &'a T>,
    T: 'a + Copy
[src]

impl<'a, P> FusedIterator for MatchIndices<'a, P> where
    P: Pattern<'a>, 
[src]

impl<'a, P> FusedIterator for Matches<'a, P> where
    P: Pattern<'a>, 
[src]

impl<'a, P> FusedIterator for RMatchIndices<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: ReverseSearcher<'a>, 
[src]

impl<'a, P> FusedIterator for RMatches<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: ReverseSearcher<'a>, 
[src]

impl<'a, P> FusedIterator for std::str::RSplit<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: ReverseSearcher<'a>, 
[src]

impl<'a, P> FusedIterator for std::str::RSplitN<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: ReverseSearcher<'a>, 
[src]

impl<'a, P> FusedIterator for RSplitTerminator<'a, P> where
    P: Pattern<'a>,
    <P as Pattern<'a>>::Searcher: ReverseSearcher<'a>, 
[src]

impl<'a, P> FusedIterator for std::str::Split<'a, P> where
    P: Pattern<'a>, 
[src]

impl<'a, P> FusedIterator for std::str::SplitN<'a, P> where
    P: Pattern<'a>, 
[src]

impl<'a, P> FusedIterator for SplitTerminator<'a, P> where
    P: Pattern<'a>, 
[src]

impl<'a, T, P> FusedIterator for std::slice::RSplitN<'a, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<'a, T, P> FusedIterator for RSplitNMut<'a, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<'a, T, P> FusedIterator for std::slice::SplitN<'a, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<'a, T, P> FusedIterator for SplitNMut<'a, T, P> where
    P: FnMut(&T) -> bool
[src]

impl<A> FusedIterator for Repeat<A> where
    A: Clone
[src]

impl<A> FusedIterator for std::ops::Range<A> where
    A: Step
[src]

impl<A> FusedIterator for RangeFrom<A> where
    A: Step
[src]

impl<A> FusedIterator for RangeInclusive<A> where
    A: Step
[src]

impl<A> FusedIterator for std::option::IntoIter<A>[src]

impl<A, B> FusedIterator for Chain<A, B> where
    A: FusedIterator,
    B: FusedIterator<Item = <A as Iterator>::Item>, 
[src]

impl<A, B> FusedIterator for Zip<A, B> where
    A: FusedIterator,
    B: FusedIterator
[src]

impl<A, F> FusedIterator for OnceWith<F> where
    F: FnOnce() -> A, 
[src]

impl<A, F> FusedIterator for RepeatWith<F> where
    F: FnMut() -> A, 
[src]

impl<B, I, F> FusedIterator for FilterMap<I, F> where
    F: FnMut(<I as Iterator>::Item) -> Option<B>,
    I: FusedIterator
[src]

impl<B, I, F> FusedIterator for Map<I, F> where
    F: FnMut(<I as Iterator>::Item) -> B,
    I: FusedIterator
[src]

impl<I> FusedIterator for Box<I> where
    I: FusedIterator + ?Sized
[src]

impl<I> FusedIterator for Cycle<I> where
    I: Clone + Iterator
[src]

impl<I> FusedIterator for Enumerate<I> where
    I: FusedIterator
[src]

impl<I> FusedIterator for Fuse<I> where
    I: Iterator
[src]

impl<I> FusedIterator for Peekable<I> where
    I: FusedIterator
[src]

impl<I> FusedIterator for Rev<I> where
    I: FusedIterator + DoubleEndedIterator
[src]

impl<I> FusedIterator for Skip<I> where
    I: FusedIterator
[src]

impl<I> FusedIterator for Take<I> where
    I: FusedIterator
[src]

impl<I, F> FusedIterator for Inspect<I, F> where
    F: FnMut(&<I as Iterator>::Item),
    I: FusedIterator
[src]

impl<I, P> FusedIterator for Filter<I, P> where
    I: FusedIterator,
    P: FnMut(&<I as Iterator>::Item) -> bool
[src]

impl<I, P> FusedIterator for SkipWhile<I, P> where
    I: FusedIterator,
    P: FnMut(&<I as Iterator>::Item) -> bool
[src]

impl<I, P> FusedIterator for TakeWhile<I, P> where
    I: FusedIterator,
    P: FnMut(&<I as Iterator>::Item) -> bool
[src]

impl<I, U> FusedIterator for Flatten<I> where
    I: FusedIterator,
    U: Iterator,
    <I as Iterator>::Item: IntoIterator,
    <<I as Iterator>::Item as IntoIterator>::IntoIter == U,
    <<I as Iterator>::Item as IntoIterator>::Item == <U as Iterator>::Item
[src]

impl<I, U, F> FusedIterator for FlatMap<I, U, F> where
    F: FnMut(<I as Iterator>::Item) -> U,
    I: FusedIterator,
    U: IntoIterator
[src]

impl<K> FusedIterator for std::collections::hash_set::IntoIter<K>[src]

impl<K, V> FusedIterator for std::collections::btree_map::IntoIter<K, V>[src]

impl<K, V> FusedIterator for std::collections::hash_map::IntoIter<K, V>[src]

impl<T> FusedIterator for std::collections::binary_heap::IntoIter<T>[src]

impl<T> FusedIterator for std::collections::btree_set::IntoIter<T>[src]

impl<T> FusedIterator for std::collections::linked_list::IntoIter<T>[src]

impl<T> FusedIterator for std::collections::vec_deque::IntoIter<T>[src]

impl<T> FusedIterator for Empty<T>[src]

impl<T> FusedIterator for Once<T>[src]

impl<T> FusedIterator for std::result::IntoIter<T>[src]

impl<T> FusedIterator for std::vec::IntoIter<T>[src]

impl<T, F> FusedIterator for Successors<T, F> where
    F: FnMut(&T) -> Option<T>, 
[src]

Loading content...