pub trait Apply<Delta> {
type Error;
// Required method
fn apply(&mut self, delta: Delta) -> Result<(), Self::Error>;
}Expand description
Operation-based merge
§Laws
- Atomicity: If
x.apply(d)fails,xis unchanged - Coherence with
Join: IfSelf: JoinandDelta = Self, thenx.apply(y)succeeds and is the same asx.join(y)
§References
- Operation-based CRDTs: https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type#Operation-based_CRDTs
Required Associated Types§
Required Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".