Increment the version for the node passed as argument.
Increment the version for the node passed as argument. Returns a new VectorClock.
Returns true if this
is before that
else false.
Returns true if this
is before that
else false.
Returns true if this
and that
are concurrent else false.
Returns true if this
and that
are concurrent else false.
Returns true if this VectorClock has the same history as the 'that' VectorClock else false.
Returns true if this
is after that
else false.
Returns true if this
is after that
else false.
Compare two vector clocks.
Compare two vector clocks. The outcome will be one of the following:
1. Clock 1 is SAME (==) as Clock 2 iff for all i c1(i) == c2(i) 2. Clock 1 is BEFORE (<) Clock 2 iff for all i c1(i) <= c2(i) and there exist a j such that c1(j) < c2(j) 3. Clock 1 is AFTER (>) Clock 2 iff for all i c1(i) >= c2(i) and there exist a j such that c1(j) > c2(j). 4. Clock 1 is CONCURRENT (<>) to Clock 2 otherwise.
Merges this VectorClock with another VectorClock.
Merges this VectorClock with another VectorClock. E.g. merges its versioned history.
(vectorClock: StringAdd).self
(vectorClock: StringFormat).self
(vectorClock: ArrowAssoc[VectorClock]).x
(Since version 2.10.0) Use leftOfArrow
instead
(vectorClock: Ensuring[VectorClock]).x
(Since version 2.10.0) Use resultOfEnsuring
instead
Representation of a Vector-based clock (counting clock), inspired by Lamport logical clocks.
Based on code from the 'vlock' VectorClock library by Coda Hale.