pub trait ErasedCommReducer {
// Required methods
fn reduce_erased(
&self,
left: &Serialized,
right: &Serialized,
) -> Result<Serialized>;
fn typehash(&self) -> u64;
// Provided method
fn reduce_updates(
&self,
updates: Vec<Serialized>,
) -> Result<Serialized, (Error, Vec<Serialized>)> { ... }
}
Expand description
Type erased version of CommReducer.
Required Methods§
Sourcefn reduce_erased(
&self,
left: &Serialized,
right: &Serialized,
) -> Result<Serialized>
fn reduce_erased( &self, left: &Serialized, right: &Serialized, ) -> Result<Serialized>
Reduce 2 updates into a single update.
Sourcefn typehash(&self) -> u64
fn typehash(&self) -> u64
Typehash of the underlying CommReducer
type.
Provided Methods§
Sourcefn reduce_updates(
&self,
updates: Vec<Serialized>,
) -> Result<Serialized, (Error, Vec<Serialized>)>
fn reduce_updates( &self, updates: Vec<Serialized>, ) -> Result<Serialized, (Error, Vec<Serialized>)>
Reducer an non-empty vector of updates. Return Error if the vector is empty.