MapReduceKer

Trait MapReduceKer 

Source
pub trait MapReduceKer<T, Params = ()>:
    Send
    + Sync
    + Debug
    + DynClone
    + Clone
    + 'static
where Params: Copy + Send + Sync + Debug + 'static + Default, T: LADatum,
{ // Required methods fn name() -> &'static str; fn alignment_items() -> usize; fn nr() -> usize; fn map_neutral() -> T; fn reduce_neutral() -> T; fn reduce_two(a: T, b: T) -> T; fn run(vec: &mut [T], params: Params) -> T; // Provided methods fn alignment_bytes() -> usize { ... } fn red() -> Box<dyn MapReduce<T, Params>> { ... } }

Required Methods§

Source

fn name() -> &'static str

Source

fn alignment_items() -> usize

Source

fn nr() -> usize

Source

fn map_neutral() -> T

Source

fn reduce_neutral() -> T

Source

fn reduce_two(a: T, b: T) -> T

Source

fn run(vec: &mut [T], params: Params) -> T

Provided Methods§

Source

fn alignment_bytes() -> usize

Source

fn red() -> Box<dyn MapReduce<T, Params>>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§