package data
- Alphabetic
- Public
- Protected
Type Members
- final class CellSet[Ref[_], A] extends AnyVal
Similar to IncSet but specialized for domain references.
Similar to IncSet but specialized for domain references. Failed domains might be removed from this set automatically without emitting any delta.
- sealed trait Closeable[+A] extends AnyRef
Represents a refinable value that in addition can be artificially revoked ("closed").
- final class DecSet[A] extends AnyVal
Decreasing set.
Decreasing set. A wrapper for
Set
where a _monotonic_ update is one that removes elements, e.g. by intersection or set difference. This is dual to the usual view of the poset of sets: here, smaller sets (by subset relation) are considered greater (i.e. are higher in the lattice), set intersection is the join and set union is the meet. - final case class Discrete[A](value: A) extends AnyVal with Product with Serializable
Marker wrapper meaning that any two distinct values of type
Discrete[A]
should be treated as incomparable.Marker wrapper meaning that any two distinct values of type
Discrete[A]
should be treated as incomparable. As a consequence, a value of typeDiscrete[A]
cannot be refined to obtain a different value. Therefore, refinement is disallowed altogether by setting theUpdate
type to an uninhabited type. - trait DiscreteInstances extends DiscreteInstances1
- trait DiscreteInstances1 extends AnyRef
- final class IncSet[A] extends AnyVal
Increasing set.
Increasing set. A wrapper for
Set
where a _monotonic_ update is one that adds elements, e.g. by union with another set. - class IncSets[F[_], Var[_], Val[_]] extends AnyRef
- final case class Lexicographic[A, B](_1: A, _2: B) extends Product with Serializable
- sealed trait Promise[+A] extends AnyRef
For any type
A
,Promise[A]
is a bounded lattice on the setA ⊔ {0, 1}
(where "⊔" means "disjoint union") with0
being the least element,1
being the greatest element, and all elements ofA
forming an antichain (i.e.For any type
A
,Promise[A]
is a bounded lattice on the setA ⊔ {0, 1}
(where "⊔" means "disjoint union") with0
being the least element,1
being the greatest element, and all elements ofA
forming an antichain (i.e. mutually incomparable).0
represents an empty (incomplete) promise, the elements ofA
represent a completed promise, and1
represents a conflict (a promise completed multiple times with different values). - sealed trait Revocable[+A] extends AnyRef
Represents a discrete (non-refinable) value that can be revoked.
- case class Tupled2[A, B, Ref[_]]() extends Rel3[Ref[A], Ref[B], Ref[(A, B)]] with Product with Serializable
Product of two cells.
Product of two cells.
The flow is unidirectional, from factors to the product, but not the other way around.
Queries have to specify a superset of either both factors, or the result. A query that specifies just one factor doesn't uniquely determine the types of the other columns, and therefore is not considered type-safe.
Value Members
- object CellSet
- object Closeable
- object DecSet
- object Discrete extends DiscreteInstances with Serializable
- object IncSet
- object Lexicographic extends Serializable
- object Promise
- object Promises
Convenience methods to work with promises.
- object Revocable
- object Tupled2 extends Serializable
- object intMax
- object listLog
Convenience methods to work with a list as a prepend-only log.
Convenience methods to work with a list as a prepend-only log. Monotonic update is prepending an element to the list. A diff is a list of appended elements.
**Note:** updates to log are neither idempotent nor commutative, as is required by Dom.update, so don't base any business logic on it.