Trait rayon::iter::ExactParallelIterator
[−]
[src]
pub trait ExactParallelIterator: BoundedParallelIterator { fn len(&mut self) -> usize; fn collect_into(self, target: &mut Vec<Self::Item>) { ... } }
A trait for parallel iterators items where the precise number of items is known. This occurs when e.g. iterating over a vector. Knowing precisely how many items will be produced is very useful.
Required Methods
fn len(&mut self) -> usize
Produces an exact count of how many items this iterator will produce, presuming no panic occurs.
Provided Methods
fn collect_into(self, target: &mut Vec<Self::Item>)
Collects the results of the iterator into the specified vector. The vector is always truncated before execution begins. If possible, reusing the vector across calls can lead to better performance since it reuses the same backing buffer.
Implementors
impl<T: Ord + Send> ExactParallelIterator for rayon::collections::binary_heap::IntoIter<T>
impl<'a, T: Ord + Sync + 'a> ExactParallelIterator for rayon::collections::binary_heap::Iter<'a, T>
impl<T: Send> ExactParallelIterator for rayon::collections::vec_deque::IntoIter<T>
impl<'a, T: Sync + 'a> ExactParallelIterator for rayon::collections::vec_deque::Iter<'a, T>
impl<'a, T: Send + 'a> ExactParallelIterator for rayon::collections::vec_deque::IterMut<'a, T>
impl<A, B> ExactParallelIterator for Chain<A, B> where A: ExactParallelIterator,
B: ExactParallelIterator<Item=A::Item>impl<I> ExactParallelIterator for Enumerate<I> where I: IndexedParallelIterator
impl<I> ExactParallelIterator for Skip<I> where I: IndexedParallelIterator
impl<I> ExactParallelIterator for Take<I> where I: IndexedParallelIterator
impl<I, F> ExactParallelIterator for Map<I, F> where I: ExactParallelIterator,
F: MapOp<I::Item>impl<I: ExactParallelIterator> ExactParallelIterator for Weight<I>
impl<A, B> ExactParallelIterator for Zip<A, B> where A: IndexedParallelIterator,
B: IndexedParallelIteratorimpl<I> ExactParallelIterator for Rev<I> where I: IndexedParallelIterator
impl<I> ExactParallelIterator for MinLen<I> where I: IndexedParallelIterator
impl<I> ExactParallelIterator for MaxLen<I> where I: IndexedParallelIterator
impl<T: Send> ExactParallelIterator for rayon::option::IntoIter<T>
impl<'a, T: Sync + 'a> ExactParallelIterator for rayon::option::Iter<'a, T>
impl<'a, T: Send + 'a> ExactParallelIterator for rayon::option::IterMut<'a, T>
impl ExactParallelIterator for rayon::range::Iter<u8>
impl ExactParallelIterator for rayon::range::Iter<u16>
impl ExactParallelIterator for rayon::range::Iter<u32>
impl ExactParallelIterator for rayon::range::Iter<usize>
impl ExactParallelIterator for rayon::range::Iter<i8>
impl ExactParallelIterator for rayon::range::Iter<i16>
impl ExactParallelIterator for rayon::range::Iter<i32>
impl ExactParallelIterator for rayon::range::Iter<isize>
impl<T: Send> ExactParallelIterator for rayon::result::IntoIter<T>
impl<'a, T: Sync + 'a> ExactParallelIterator for rayon::result::Iter<'a, T>
impl<'a, T: Send + 'a> ExactParallelIterator for rayon::result::IterMut<'a, T>
impl<'data, T: Sync + 'data> ExactParallelIterator for rayon::slice::Iter<'data, T>
impl<'data, T: Sync + 'data> ExactParallelIterator for Chunks<'data, T>
impl<'data, T: Sync + 'data> ExactParallelIterator for Windows<'data, T>
impl<'data, T: Send + 'data> ExactParallelIterator for rayon::slice::IterMut<'data, T>
impl<'data, T: Send + 'data> ExactParallelIterator for ChunksMut<'data, T>
impl<T: Send> ExactParallelIterator for rayon::vec::IntoIter<T>