#parallel #performance #join #thread

macro rayon-macro

Macros enabling parallelism using the rayon crate

2 unstable releases

0.2.0 Jul 29, 2020
0.1.0 Jan 24, 2020

#1207 in Concurrency

Apache-2.0 OR MIT

8KB
112 lines

rayon-macro

rayon-macro crate rayon-macro documentation minimum rustc 1.45 build status

The rayon-macro crate provides procedural macros to make it easier to transform serial code into rayon-enabled parallel code. For example, the parallel! macro can be used like this:

use rayon_macro::parallel;

parallel!(for i in 0..10 {
    println!("iteration {}", i);
});

It will be expanded to something like this:

(0..10).into_par_iter().for_each(|i| {
    println!("iteration {}", i);
});

Control-flow expressions in the body will also be transformed as needed.

This crate currently requires rustc 1.45.0 or greater.

License

This project is licensed under either of

at your option.

Dependencies

~2MB
~43K SLoC