ORMapEntry

@Serializable
class ORMapEntry<S : Quilted<S>>(val tags: DotSet, val value: S) : DotStore<ORMapEntry<S>>

An entry of an ORMap: a DotSet of "presence tags" plus a Quilted value. The tag set is the observed-remove handle for the key; the value merges via its own Quilted.piece when both sides hold it.

Constructors

Link copied to clipboard
constructor(tags: DotSet, value: S)

Properties

Link copied to clipboard
open override val dots: Set<Dot>

Every dot currently live in this store.

Link copied to clipboard
open override val empty: ORMapEntry<S>

The structural empty: empty tag set, same value shape. Used by DotMap.join when this entry appears only on one side — causal filtering then decides whether the tags survive, keeping the value iff they do.

Link copied to clipboard
open override val isBottom: Boolean

True when the store holds no dots.

Link copied to clipboard
Link copied to clipboard
val value: S

Functions

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open override fun join(other: ORMapEntry<S>, context: DotContext, otherContext: DotContext): ORMapEntry<S>

The causal join with other. A dot is kept when it is live in both stores, or live in one and not yet witnessed by the other side's context; it is dropped only when one side still has it while the other has it in otherContext but not in its store — the signature of a deliberate remove. context is this store's surrounding causal history; otherContext is the other's.

Link copied to clipboard
open override fun toString(): String