Trait peroxide::traits::fp::ParallelFPMatrix
source · pub trait ParallelFPMatrix {
type Scalar;
// Required methods
fn par_fmap<F>(&self, f: F) -> Self
where F: Fn(Self::Scalar) -> Self::Scalar + Send + Sync;
fn par_reduce<F, T>(&self, init: T, f: F) -> Self::Scalar
where F: Fn(Self::Scalar, Self::Scalar) -> Self::Scalar + Send + Sync,
T: Into<Self::Scalar> + Copy + Clone + Send + Sync;
fn par_zip_with<F>(&self, f: F, other: &Self) -> Self
where F: Fn(Self::Scalar, Self::Scalar) -> Self::Scalar + Send + Sync;
fn par_col_reduce<F>(&self, f: F) -> Vec<Self::Scalar>
where F: Fn(Vec<Self::Scalar>) -> Self::Scalar + Send + Sync;
fn par_row_reduce<F>(&self, f: F) -> Vec<Self::Scalar>
where F: Fn(Vec<Self::Scalar>) -> Self::Scalar + Send + Sync;
}
Expand description
Functional Programming for Matrix in Parallel (Uses Rayon crate)
Required Associated Types§
Required Methods§
fn par_fmap<F>(&self, f: F) -> Self
fn par_reduce<F, T>(&self, init: T, f: F) -> Self::Scalar
fn par_zip_with<F>(&self, f: F, other: &Self) -> Self
fn par_col_reduce<F>(&self, f: F) -> Vec<Self::Scalar>
fn par_row_reduce<F>(&self, f: F) -> Vec<Self::Scalar>
Object Safety§
This trait is not object safe.