package crdt-ml
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=c9be2ec006cd4f65e6a9bddbcedf024f876134afc1ddf4fb689dd0167de25b73
md5=b8337dcb24a3220a3c35bd5bae5c8f12
doc/crdt_immutable/I_PNCounter/index.html
Module I_PNCounter
Increment / decrement counters.
Contains two separate instances of I_IntVector, one for incrementing (add_c) and the other for decrementing (remove_c).
The only difference between PNCounter and GCounter is that Immutable_types.IVector.query t in the former returns the difference between the add_c and the remove_c vectors.
An Increment / decrement counter is a Immtable_types.IVector with type elt = int
include Immutable_types.DCounter with type elt = int
include Immutable_types.IVector with type elt = int
include Immutable_types.Mergeable
val make : unit -> tCreate a new mergeable element.
val make_in_range : int -> tmake_in_range n creates a new IVector of size ranging from 0 to n. being n greater than 0 and smaller than 2^30.
When merging two CRDTs of different sizes, the smaller one grows and pads the remaining space with zeros.
incr t increments the position associated with the numsite of t. See I_IntVector for more information on numsites.
decr t decrements the position associated with the numsite of t. See I_IntVector for more information on numsites.