#[non_exhaustive]pub enum ConflictPolicy {
Reject,
ServerWins,
ClientWins,
CustomMerge,
ManualResolution,
FieldMerge,
CommutativeOperation,
Crdt,
LastWriterWins,
}Expand description
Conflict behavior selected by application policy.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Reject
Reject stale writes.
ServerWins
Keep authoritative state.
ClientWins
Application explicitly permits client replacement.
CustomMerge
Application-specific merger is required.
ManualResolution
A human must resolve the conflict.
FieldMerge
Merge independently timestamped application fields.
CommutativeOperation
Apply an application-defined commutative mutation.
Crdt
Merge an application-defined convergent replicated data type.
LastWriterWins
Deterministically keep the newest application-timestamped whole value.
Trait Implementations§
Source§impl Clone for ConflictPolicy
impl Clone for ConflictPolicy
Source§fn clone(&self) -> ConflictPolicy
fn clone(&self) -> ConflictPolicy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for ConflictPolicy
Source§impl Debug for ConflictPolicy
impl Debug for ConflictPolicy
Source§impl<'de> Deserialize<'de> for ConflictPolicy
impl<'de> Deserialize<'de> for ConflictPolicy
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ConflictPolicy
Source§impl PartialEq for ConflictPolicy
impl PartialEq for ConflictPolicy
Source§impl Serialize for ConflictPolicy
impl Serialize for ConflictPolicy
impl StructuralPartialEq for ConflictPolicy
Auto Trait Implementations§
impl Freeze for ConflictPolicy
impl RefUnwindSafe for ConflictPolicy
impl Send for ConflictPolicy
impl Sync for ConflictPolicy
impl Unpin for ConflictPolicy
impl UnsafeUnpin for ConflictPolicy
impl UnwindSafe for ConflictPolicy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more