Trait Process

Source
pub trait Process {
    type Output;

    // Required method
    fn exec<I, V, D, IRW, VRW>(
        self,
        types: IdVal,
        id_rw: IRW,
        val_rw: VRW,
        dist: D,
    ) -> Result<Self::Output, Error>
       where I: 'static + Id,
             V: 'static + Val,
             D: 'static + Fn(&V, &V) -> V + Send,
             IRW: 'static + ReadWrite<Type = I>,
             VRW: 'static + ReadWrite<Type = V>;
}
Expand description

Defines an action which has to read and/or write given identifier and value types. It is made to be used with the IdVal type. The reason behind is that IdVal will contains the giant match for all possible (IdType, ValType) tuples.And we want to write this match only once!

Required Associated Types§

Required Methods§

Source

fn exec<I, V, D, IRW, VRW>( self, types: IdVal, id_rw: IRW, val_rw: VRW, dist: D, ) -> Result<Self::Output, Error>
where I: 'static + Id, V: 'static + Val, D: 'static + Fn(&V, &V) -> V + Send, IRW: 'static + ReadWrite<Type = I>, VRW: 'static + ReadWrite<Type = V>,

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§