2 releases
0.1.1 | Oct 25, 2019 |
---|---|
0.1.0 | Oct 25, 2019 |
#35 in #rayon
6KB
58 lines
rayon-join-macro
A wrapper around rayon::join
that accepts more than 2 and up to 8 closures to be run in parallel.
#[macro_use] extern crate rayon_join_macro;
fn main() {
use rayon_join_macro::ConsTuple;
fn factorial(n: usize) -> usize {
if n == 0 { 1 } else { n * factorial(n - 1) }
}
let (a, b, c): (u16, String, usize) = join!(
|| (1..=50).sum(),
|| "abc".repeat(3),
|| factorial(8)
);
assert_eq!(a, 1275);
assert_eq!(b, "abcabcabc");
assert_eq!(c, 40320);
}
Dependencies
~1.5MB
~25K SLoC