Trait core::iter::FusedIterator 1.26.0[−][src]
pub trait FusedIterator: Iterator { }
Expand description
一个迭代器,用完后总是继续产生 None
。
确保一次返回 None
的融合迭代器上的 next 调用保证再次返回 None
。
该 trait 应该由以此方式运行的所有迭代器实现,因为它允许优化 Iterator::fuse()
。
Note: 通常,如果需要融合的迭代器,则不应在泛型范围内使用 FusedIterator
。
相反,您应该只在迭代器上调用 Iterator::fuse()
。
如果迭代器已经融合,则额外的 Fuse
包装器将是无操作的,并且不会降低性能。
Implementors
1.36.0[src]
impl<'a, I, T: 'a> FusedIterator for Copied<I> where
I: FusedIterator<Item = &'a T>,
T: Copy,
impl<'a, P> FusedIterator for RMatchIndices<'a, P> where
P: Pattern<'a, Searcher: ReverseSearcher<'a>>,
impl<'a, P> FusedIterator for RMatches<'a, P> where
P: Pattern<'a, Searcher: ReverseSearcher<'a>>,
impl<'a, P> FusedIterator for core::str::RSplit<'a, P> where
P: Pattern<'a, Searcher: ReverseSearcher<'a>>,
impl<'a, P> FusedIterator for core::str::RSplitN<'a, P> where
P: Pattern<'a, Searcher: ReverseSearcher<'a>>,
impl<'a, P> FusedIterator for RSplitTerminator<'a, P> where
P: Pattern<'a, Searcher: ReverseSearcher<'a>>,
impl<A, B> FusedIterator for Chain<A, B> where
A: FusedIterator,
B: FusedIterator<Item = A::Item>,
impl<B, I: FusedIterator, F> FusedIterator for FilterMap<I, F> where
F: FnMut(I::Item) -> Option<B>,
impl<I, P> FusedIterator for SkipWhile<I, P> where
I: FusedIterator,
P: FnMut(&I::Item) -> bool,
impl<I, P> FusedIterator for TakeWhile<I, P> where
I: FusedIterator,
P: FnMut(&I::Item) -> bool,
1.29.0[src]
impl<I, U> FusedIterator for Flatten<I> where
I: FusedIterator<Item: IntoIterator<IntoIter = U, Item = U::Item>>,
U: Iterator,
impl<I, U, F> FusedIterator for FlatMap<I, U, F> where
I: FusedIterator,
U: IntoIterator,
F: FnMut(I::Item) -> U,
1.51.0[src]