Trait otter_api_tests::iter::FusedIterator 1.26.0[−][src]
pub trait FusedIterator: Iterator { }
Expand description
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<'_, T, S> FusedIterator for SymmetricDifference<'_, T, S> where
T: Eq + Hash,
S: BuildHasher,
[src]impl FusedIterator for Utf8Sequences
impl<'a, T> FusedIterator for Drain<'a, T> where
T: Array,
impl<A> FusedIterator for IntoIter<A> where
A: Array,
impl<'a, V> FusedIterator for Values<'a, V> where
V: 'a,
impl<'a, V> FusedIterator for ValuesMut<'a, V> where
V: 'a,
impl<'a, K, V> FusedIterator for IterMut<'a, K, V> where
K: Enum<V>,
impl<'a, K, V> FusedIterator for Iter<'a, K, V> where
K: Enum<V>,
impl<K, V> FusedIterator for IntoIter<K, V> where
K: Enum<V>,
impl<'p, A, I> FusedIterator for ArrayVecSplice<'p, A, I> where
A: Array,
I: Iterator<Item = <A as Array>::Item>,
impl<A> FusedIterator for ArrayVecIterator<A> where
A: Array,
impl<'p, A, I> FusedIterator for TinyVecSplice<'p, A, I> where
A: Array,
I: Iterator<Item = <A as Array>::Item>,
impl<'p, 's, T> FusedIterator for SliceVecDrain<'p, 's, T> where
T: Default,
impl<A> FusedIterator for TinyVecIterator<A> where
A: Array,
impl<'a, T> FusedIterator for ArrayVecDrain<'a, T> where
T: 'a + Default,
impl FusedIterator for CharIter
impl<'a> FusedIterator for DrainBytes<'a>
impl<'a> FusedIterator for CharIndices<'a>
impl<'a> FusedIterator for Bytes<'a>
impl<'a> FusedIterator for Utf8Chunks<'a>
impl<'_, T> FusedIterator for Iter<'_, T> where
T: Send + Sync,
impl<T> FusedIterator for IntoIter<T> where
T: Send,
impl<'_, T> FusedIterator for IterMut<'_, T> where
T: Send,
impl<'a> FusedIterator for AsciiCharsIter<'a>
impl<K> FusedIterator for IntoIter<K>
impl<'_, T, S> FusedIterator for Union<'_, T, S> where
T: Eq + Hash,
S: BuildHasher,
impl<'_, K> FusedIterator for Drain<'_, K>
impl<'_, K, V, F> FusedIterator for DrainFilter<'_, K, V, F> where
F: FnMut(&K, &mut V) -> bool,
impl<'_, K, V> FusedIterator for IterMut<'_, K, V>
impl<'_, K, V> FusedIterator for Values<'_, K, V>
impl<'_, K, V> FusedIterator for ValuesMut<'_, K, V>
impl<'_, K, V> FusedIterator for Iter<'_, K, V>
impl<'_, K, V> FusedIterator for Keys<'_, K, V>
impl<'_, K, F> FusedIterator for DrainFilter<'_, K, F> where
F: FnMut(&K) -> bool,
impl<T> FusedIterator for RawIter<T>
impl<'_, T, S> FusedIterator for Difference<'_, T, S> where
T: Eq + Hash,
S: BuildHasher,
impl<'_, T> FusedIterator for RawDrain<'_, T>
impl<K, V> FusedIterator for IntoIter<K, V>
impl<T> FusedIterator for RawIntoIter<T>
impl<'_, T, S> FusedIterator for SymmetricDifference<'_, T, S> where
T: Eq + Hash,
S: BuildHasher,
impl<'_, K, V> FusedIterator for Drain<'_, K, V>
impl<'_, T, S> FusedIterator for Intersection<'_, T, S> where
T: Eq + Hash,
S: BuildHasher,
impl<'_, K> FusedIterator for Iter<'_, K>
Implementors
impl FusedIterator for otter_api_tests::imports::regex::bytes::SetMatchesIntoIter
impl FusedIterator for otter_api_tests::imports::regex::SetMatchesIntoIter
impl<'_, K, V, F> FusedIterator for otter_api_tests::btree_map::DrainFilter<'_, K, V, F> where
F: FnMut(&K, &mut V) -> bool,
[src]impl<'_, K, V, F> FusedIterator for otter_api_tests::hash_map::DrainFilter<'_, K, V, F> where
F: FnMut(&K, &mut V) -> bool,
[src]impl<'_, T> FusedIterator for otter_api_tests::btree_set::SymmetricDifference<'_, T> where
T: Ord,
[src]impl<'_, T, F> FusedIterator for otter_api_tests::btree_set::DrainFilter<'_, T, F> where
F: FnMut(&T) -> bool,
[src]impl<'_, T, P> FusedIterator for otter_api_tests::imports::failure::_core::slice::RSplit<'_, T, P> where
P: FnMut(&T) -> bool,
1.27.0[src]impl<'_, T, P> FusedIterator for otter_api_tests::imports::failure::_core::slice::Split<'_, T, P> where
P: FnMut(&T) -> bool,
[src]impl<'_, T, P> FusedIterator for otter_api_tests::imports::failure::_core::slice::SplitInclusive<'_, T, P> where
P: FnMut(&T) -> bool,
1.51.0[src]impl<'_, T, P> FusedIterator for SplitInclusiveMut<'_, T, P> where
P: FnMut(&T) -> bool,
1.51.0[src]impl<'a> FusedIterator for Fds<'a>
impl<'a> FusedIterator for otter_api_tests::imports::regex::bytes::SetMatchesIter<'a>
impl<'a> FusedIterator for otter_api_tests::imports::regex::SetMatchesIter<'a>
impl<'a, I, T> FusedIterator for Cloned<I> where
T: 'a + Clone,
I: FusedIterator<Item = &'a T>,
[src]impl<'a, I, T> FusedIterator for Copied<I> where
T: 'a + Copy,
I: FusedIterator<Item = &'a T>,
1.36.0[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::basic::Drain<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::basic::Iter<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::basic::IterMut<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::basic::Keys<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::basic::Values<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::basic::ValuesMut<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::dense::Drain<'a, K, V> where
K: 'a + Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::dense::Iter<'a, K, V> where
K: 'a + Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::dense::IterMut<'a, K, V> where
K: 'a + Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::dense::Keys<'a, K, V> where
K: 'a + Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::dense::Values<'a, K, V> where
K: 'a + Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::dense::ValuesMut<'a, K, V> where
K: 'a + Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::hop::Drain<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::hop::Iter<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::hop::IterMut<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::hop::Keys<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::hop::Values<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::hop::ValuesMut<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::secondary::Drain<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::secondary::Iter<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::secondary::IterMut<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::secondary::Keys<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::secondary::Values<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::secondary::ValuesMut<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::sparse_secondary::Drain<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::sparse_secondary::Iter<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::sparse_secondary::IterMut<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::sparse_secondary::Keys<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::sparse_secondary::Values<'a, K, V> where
K: Key,
[src]impl<'a, K, V> FusedIterator for otter_api_tests::imports::slotmap::sparse_secondary::ValuesMut<'a, K, V> where
K: Key,
[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 otter_api_tests::str::RSplit<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: ReverseSearcher<'a>,
[src]impl<'a, P> FusedIterator for otter_api_tests::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 otter_api_tests::str::SplitInclusive<'a, P> where
P: Pattern<'a>,
1.51.0[src]impl<'a, T, P> FusedIterator for otter_api_tests::imports::failure::_core::slice::RSplitN<'a, T, P> where
P: FnMut(&T) -> bool,
[src]impl<'a, T, P> FusedIterator for otter_api_tests::imports::failure::_core::slice::SplitN<'a, T, P> where
P: FnMut(&T) -> bool,
[src]impl<'c, 't> FusedIterator for otter_api_tests::imports::regex::bytes::SubCaptureMatches<'c, 't>
impl<'c, 't> FusedIterator for otter_api_tests::imports::regex::SubCaptureMatches<'c, 't>
impl<'de, R, T> FusedIterator for StreamDeserializer<'de, R, T> where
T: Deserialize<'de>,
R: Read<'de> + Fused,
[src]impl<'r> FusedIterator for otter_api_tests::imports::regex::bytes::CaptureNames<'r>
impl<'r> FusedIterator for otter_api_tests::imports::regex::CaptureNames<'r>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::bytes::CaptureMatches<'r, 't>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::bytes::Matches<'r, 't>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::bytes::Split<'r, 't>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::bytes::SplitN<'r, 't>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::CaptureMatches<'r, 't>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::Matches<'r, 't>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::Split<'r, 't>
impl<'r, 't> FusedIterator for otter_api_tests::imports::regex::SplitN<'r, 't>
impl<A> FusedIterator for otter_api_tests::imports::failure::_core::ops::Range<A> where
A: Step,
[src]impl<A, B> FusedIterator for Chain<A, B> where
B: FusedIterator<Item = <A as Iterator>::Item>,
A: FusedIterator,
[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 CombinationsWithReplacement<I> where
I: Iterator,
<I as Iterator>::Item: Clone,
[src]impl<I> FusedIterator for Unique<I> where
I: FusedIterator,
<I as Iterator>::Item: Eq,
<I as Iterator>::Item: Hash,
<I as Iterator>::Item: Clone,
[src]impl<I, ElemF> FusedIterator for IntersperseWith<I, ElemF> where
I: Iterator,
ElemF: IntersperseElement<<I as Iterator>::Item>,
[src]impl<I, F> FusedIterator for KMergeBy<I, F> where
F: KMergePredicate<<I as Iterator>::Item>,
I: Iterator,
[src]impl<I, F> FusedIterator for PadUsing<I, F> where
F: FnMut(usize) -> <I as Iterator>::Item,
I: FusedIterator,
[src]impl<I, F> FusedIterator for Positions<I, F> where
F: FnMut(<I as Iterator>::Item) -> bool,
I: FusedIterator,
[src]impl<I, F> FusedIterator for Update<I, F> where
F: FnMut(&mut <I as Iterator>::Item),
I: FusedIterator,
[src]impl<I, F> FusedIterator for Inspect<I, F> where
F: FnMut(&<I as Iterator>::Item),
I: FusedIterator,
[src]impl<I, F, T, E> FusedIterator for FilterOk<I, F> where
F: FnMut(&T) -> bool,
I: FusedIterator<Item = Result<T, E>>,
[src]impl<I, F, T, U, E> FusedIterator for FilterMapOk<I, F> where
F: FnMut(T) -> Option<U>,
I: FusedIterator<Item = Result<T, E>>,
[src]impl<I, J> FusedIterator for Interleave<I, J> where
I: Iterator,
J: Iterator<Item = <I as Iterator>::Item>,
[src]impl<I, J> FusedIterator for InterleaveShortest<I, J> where
I: FusedIterator,
J: FusedIterator<Item = <I as Iterator>::Item>,
[src]impl<I, J> FusedIterator for Product<I, J> where
I: FusedIterator,
J: Clone + FusedIterator,
<I as Iterator>::Item: Clone,
[src]impl<I, J, F> FusedIterator for MergeBy<I, J, F> where
F: MergePredicate<<I as Iterator>::Item>,
I: FusedIterator,
J: FusedIterator<Item = <I as Iterator>::Item>,
[src]impl<I, P> FusedIterator for Filter<I, P> where
P: FnMut(&<I as Iterator>::Item) -> bool,
I: FusedIterator,
[src]impl<I, P> FusedIterator for SkipWhile<I, P> where
P: FnMut(&<I as Iterator>::Item) -> bool,
I: FusedIterator,
[src]impl<I, P> FusedIterator for TakeWhile<I, P> where
P: FnMut(&<I as Iterator>::Item) -> bool,
I: FusedIterator,
[src]impl<I, T> FusedIterator for TupleCombinations<I, T> where
T: HasCombination<I>,
I: FusedIterator,
[src]impl<I, T> FusedIterator for TupleWindows<I, T> where
T: HomogeneousTuple + Clone,
I: FusedIterator<Item = <T as TupleCollect>::Item>,
<T as TupleCollect>::Item: Clone,
[src]impl<I, T, E> FusedIterator for FlattenOk<I, T, E> where
T: IntoIterator,
I: FusedIterator<Item = Result<T, E>>,
[src]Only the iterator being flattened needs to implement FusedIterator
.
impl<I, U> FusedIterator for Flatten<I> where
U: Iterator,
I: FusedIterator,
<I as Iterator>::Item: IntoIterator,
<<I as Iterator>::Item as IntoIterator>::IntoIter == U,
<<I as Iterator>::Item as IntoIterator>::Item == <U as Iterator>::Item,
1.29.0[src]impl<I, U, F> FusedIterator for FlatMap<I, U, F> where
U: IntoIterator,
F: FnMut(<I as Iterator>::Item) -> U,
I: FusedIterator,
[src]impl<I, V, F> FusedIterator for UniqueBy<I, V, F> where
V: Eq + Hash,
F: FnMut(&<I as Iterator>::Item) -> V,
I: FusedIterator,
[src]impl<K, V> FusedIterator for otter_api_tests::imports::slotmap::basic::IntoIter<K, V> where
K: Key,
[src]impl<K, V> FusedIterator for otter_api_tests::imports::slotmap::dense::IntoIter<K, V> where
K: Key,
[src]impl<K, V> FusedIterator for otter_api_tests::imports::slotmap::hop::IntoIter<K, V> where
K: Key,
[src]impl<K, V> FusedIterator for otter_api_tests::imports::slotmap::secondary::IntoIter<K, V> where
K: Key,
[src]impl<K, V> FusedIterator for otter_api_tests::imports::slotmap::sparse_secondary::IntoIter<K, V> where
K: Key,
[src]impl<T, N> FusedIterator for GenericArrayIter<T, N> where
N: ArrayLength<T>,
impl<T, const N: usize> FusedIterator for otter_api_tests::imports::failure::_core::array::IntoIter<T, N>
1.40.0[src]