[][src]Enum crdts::orswot::Op

pub enum Op<M: Member, A: Actor> {
    Add {
        dot: Dot<A>,
        member: M,
    },
    Rm {
        clock: VClock<A>,
        members: HashSet<M>,
    },
}

Op's define an edit to an Orswot, Op's must be replayed in the exact order they were produced to guarantee convergence.

Op's are idempotent, that is, applying an Op twice will not have an effect

Variants

Add

Add a member to the set

Fields of Add

dot: Dot<A>

witnessing dot

member: M

Member to add

Rm

Remove a member from the set

Fields of Rm

clock: VClock<A>

witnessing clock

members: HashSet<M>

Member to remove

Trait Implementations

impl<M: PartialEq + Member, A: PartialEq + Actor> PartialEq<Op<M, A>> for Op<M, A>[src]

impl<M: Eq + Member, A: Eq + Actor> Eq for Op<M, A>[src]

impl<M: Clone + Member, A: Clone + Actor> Clone for Op<M, A>[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl<M: Debug + Member, A: Debug + Actor> Debug for Op<M, A>[src]

impl<M: Member, A: Actor> Serialize for Op<M, A> where
    M: Serialize,
    A: Serialize
[src]

impl<'de, M: Member, A: Actor> Deserialize<'de> for Op<M, A> where
    M: Deserialize<'de>,
    A: Deserialize<'de>, 
[src]

Auto Trait Implementations

impl<M, A> Send for Op<M, A> where
    A: Send,
    M: Send

impl<M, A> Unpin for Op<M, A> where
    A: Unpin,
    M: Unpin

impl<M, A> Sync for Op<M, A> where
    A: Sync,
    M: Sync

impl<M, A> UnwindSafe for Op<M, A> where
    A: RefUnwindSafe + UnwindSafe,
    M: RefUnwindSafe + UnwindSafe

impl<M, A> RefUnwindSafe for Op<M, A> where
    A: RefUnwindSafe,
    M: RefUnwindSafe

Blanket Implementations

impl<T> Val for T where
    T: PartialEq<T> + Clone + Debug
[src]

impl<T> Val for T where
    T: Clone + Debug
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]