JoinDom

trait JoinDom[D] extends SyncDom[D]

Typeclass for domains that are join-semilattices.

Companion:
object
trait SyncDom[D]
trait Dom[D]
trait IDom[[i] =>> D]
class Object
trait Matchable
class Any

Type members

Inherited types

type Delta
Inherited from:
Dom
type Domain = D
Inherited from:
Dom
override type IDelta[I, J] = Delta
Inherited from:
Dom
override type IUpdate[I] = Update
Inherited from:
Dom
override type IUpdateRes[I, J] = IUpdateResult[[i] =>> D, IDelta, I, _]
Inherited from:
Dom
type Update
Inherited from:
Dom

Value members

Abstract methods

def toJoinUpdate(d: D): Update

Concrete methods

def join(d1: D, d2: D): D

Join operation (as in join-semilattice).

Join operation (as in join-semilattice).

def ljoin(d1: D, d2: D): UpdateResult[D, Delta]

Asymmetric join operation: performs join and returns Updated if the result is different from the left argument, Unchanged if the result is the same as the left argument.

Asymmetric join operation: performs join and returns Updated if the result is different from the left argument, Unchanged if the result is the same as the left argument.

override def toPatch(d: D, δ: Delta): Update
Definition Classes

Inherited methods

def appendDeltas(d1: Delta, d2: Delta): Delta

Associative, idempotent and monotonic (non-decreasing) operation to combine diffs.

Associative, idempotent and monotonic (non-decreasing) operation to combine diffs.

Inherited from:
Dom
final def aux: Aux[[i] =>> D, IUpdate, IDelta]
Inherited from:
IDom
final override def composeDeltas[I1, I2, I3](δ1: IDelta[I2, I3], δ2: IDelta[I1, I2]): IDelta[I1, I3]
Definition Classes
Inherited from:
Dom
def deltaSemigroup: Semigroup[Delta]
Inherited from:
Dom
override def iIsFailed[I](d: D): Boolean
Definition Classes
Inherited from:
Dom
override def iUpdate[I, J](d: D, u: Update): IUpdateRes[I, J]
Definition Classes
Inherited from:
Dom
def isFailed(d: D): Boolean
Inherited from:
Dom
override def toUpdateResult[I, J](ch: IUpdateRes[I, J]): IUpdateResult[[i] =>> D, IDelta, I, _]
Definition Classes
Inherited from:
Dom
def update(d: D, u: Update): UpdateResult[D, Delta]
Inherited from:
Dom
def update_(d: D, u: Update): D

A variation on update that always returns the updated value, whether changed or unchaged.

A variation on update that always returns the updated value, whether changed or unchaged.

Inherited from:
Dom