p3_maybe_rayon::prelude

Trait IntoParallelRefMutIterator

Source
pub trait IntoParallelRefMutIterator<'data> {
    type Iter: ParallelIterator<Item = Self::Item>;
    type Item: Send + 'data;

    // Required method
    fn par_iter_mut(&'data mut self) -> Self::Iter;
}
Expand description

IntoParallelRefMutIterator implements the conversion to a ParallelIterator, providing mutable references to the data.

This is a parallel version of the iter_mut() method defined by various collections.

This trait is automatically implemented for I where &mut I: IntoParallelIterator. In most cases, users will want to implement IntoParallelIterator rather than implement this trait directly.

Required Associated Types§

Source

type Iter: ParallelIterator<Item = Self::Item>

The type of iterator that will be created.

Source

type Item: Send + 'data

The type of item that will be produced; this is typically an &'data mut T reference.

Required Methods§

Source

fn par_iter_mut(&'data mut self) -> Self::Iter

Creates the parallel iterator from self.

§Examples
use rayon::prelude::*;

let mut v = vec![0usize; 5];
v.par_iter_mut().enumerate().for_each(|(i, x)| *x = i);
assert_eq!(v, [0, 1, 2, 3, 4]);

Implementors§