Trait accurate::sum::traits::ParallelSumWithAccumulator [] [src]

pub trait ParallelSumWithAccumulator<F>: ParallelIterator<Item = F> where
    F: Send
{ fn parallel_sum_with_accumulator<Acc>(self) -> F
    where
        Acc: ParallelSumAccumulator<F>,
        F: Zero
, { ... } }

Sums the items of an iterator, possibly in parallel

Examples


use rayon::prelude::*;

use accurate::traits::*;
use accurate::sum::OnlineExactSum;

let s = vec![1.0, 2.0, 3.0].par_iter().map(|&x| x)
    .parallel_sum_with_accumulator::<OnlineExactSum<_>>();
assert_eq!(6.0f64, s);

Provided Methods

Sums the items of an iterator, possibly in parallel

Implementors