FugueMovableListState<T> class
State of a CRDTFugueMovableListHandler.
Holds two pieces:
- a
FugueTreeofFugueElementIDslots: each tree node represents a position in the document, and the node's value is the identity that "lives at" that position. The tree provides the interleaving-aware total order from the Fugue algorithm. - a
Map<identityID, MovableElement>keyed by stable element identity, carrying the LWW value and LWW current position of each element.
The visible list is the result of walking the tree in traversal order and keeping only the slots whose identity still points back to them (i.e. the LWW-winning position of the identity) and whose identity has not been deleted.
Constructors
- FugueMovableListState.empty()
-
Creates an empty state.
factory
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
value
→ List<
T> -
Returns the public list value.
no setter
-
visiblePositions
→ List<
FugueElementID> -
Returns the visible positions in traversal order.
no setter
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
visibleIdentities(
) → List< FugueElementID> - The identity of every visible element, in order.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited