pub trait Crdt: Mergeable {
type Delta;
// Required method
fn apply_delta(&mut self, delta: Self::Delta);
// Provided methods
fn replica_count(&self) -> Option<usize> { ... }
fn validate_record(
&self,
_id: RecordId,
_delta: &Self::Delta,
) -> Result<(), WireError> { ... }
}Expand description
Delta application surface for CRDT product types.
Required Associated Types§
Required Methods§
fn apply_delta(&mut self, delta: Self::Delta)
Provided Methods§
Sourcefn replica_count(&self) -> Option<usize>
fn replica_count(&self) -> Option<usize>
Fixed replica domain, or None for CRDTs without a fixed arity.
Sourcefn validate_record(
&self,
_id: RecordId,
_delta: &Self::Delta,
) -> Result<(), WireError>
fn validate_record( &self, _id: RecordId, _delta: &Self::Delta, ) -> Result<(), WireError>
Validate decoded records before admission or replay into this carrier.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".