GrowOnlyMap

rdts.datatypes.GrowOnlyMap
See theGrowOnlyMap companion object
case class GrowOnlyMap[K, V](inner: Map[K, V])

A GMap (Grow-only Map) is a Delta CRDT that models a map from an arbitrary key type to nested Delta CRDTs. In contrast to rdts.datatypes.contextual.ObserveRemoveMap, key/value pairs cannot be removed from this map. However, due to the smaller internal representation, mutate operations on large maps are a lot faster than on ObserveRemoveMap.

The nested CRDTs can be queried/mutated by calling the queryKey/mutateKey methods with a DeltaQuery/DeltaMutator generated by a CRDT Interface method of the nested CRDT. For example, to enable a nested EWFlag, one would pass EWFlagInterface.enable() as the DeltaMutator to mutateKey.

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def mutateKeyNamedCtx(k: K, default: => V)(m: Dotted[V] => Dotted[V])(using context: Dots): Dotted[GrowOnlyMap[K, V]]

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product

Exports

Defined exports

def getOrElse[V1 >: MapOps.this.V](key: MapOps.this.K, default: => V1): V1
Exported from MapOps
def iterator: Iterator[IterableOnce.this.A]
Exported from IterableOnce
override def keySet: Set[MapOps.this.K]
Exported from MapOps
def keys: Iterable[MapOps.this.K]
Exported from MapOps
def keysIterator: Iterator[MapOps.this.K]
Exported from MapOps
def values: Iterable[MapOps.this.V]
Exported from MapOps
def valuesIterator: Iterator[MapOps.this.V]
Exported from MapOps