/// <summary> /// Assigns a <see cref="Versioned{T}"/> value and <paramref name="vectorTimestamp"/> and returns an updated MV-Register. /// </summary> /// <param name="value">A value to assign.</param> /// <param name="vectorTimestamp">A vector timestamp of the value to assign.</param> /// <param name="systemTimestamp">A system timestamp of the value to assign.</param> /// <param name="emitterId">An id of the value emitter.</param> public LWWRegister <T> Assign(T value, VectorTime vectorTimestamp, DateTime?systemTimestamp = null, string emitterId = null) => new LWWRegister <T>(inner.Assign(value, vectorTimestamp, systemTimestamp, emitterId));
public MVRegister <T> Effect(MVRegister <T> crdt, object operation, DurableEvent e) { var op = (AssignOp)operation; return(crdt.Assign((T)op.Value, e.VectorTimestamp, e.SystemTimestamp, e.EmitterId)); }