p

nutcracker

package nutcracker

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. nutcracker
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Package Members

  1. package data
  2. package ops
  3. package toolkit
  4. package util

Type Members

  1. sealed trait Alternator extends AnyRef
  2. sealed trait Assessment[+U] extends AnyRef

    U

    description of unresolved things

  3. final case class Assignment[L <: HList] extends AnyVal with Product with Serializable
  4. trait BranchingPropagation[M[_], Var[_], Val[_]] extends AnyRef
  5. abstract class Constraint[L <: HList, K[_]] extends AnyRef
  6. trait CostApi[M[_]] extends AnyRef
  7. trait Defer[M[_], D] extends AnyRef
  8. trait Dom[D] extends IDom[D]
  9. trait DomWithBottom[D] extends Dom[D]
  10. trait Final[D] extends AnyRef

    Typeclass for domains that have (some) "_final_" elements, i.e.

    Typeclass for domains that have (some) "_final_" elements, i.e. elements that cannot be refined further without reaching a contradiction. In other words, typeclass for domains that have elements _covered_ by top.

  11. trait IDom[D] extends AnyRef
  12. trait JoinDom[D] extends SyncDom[D]

    Typeclass for domains that are join-semilattices.

  13. trait Observable[M[_], A] extends Observers[M]

    Can be observed for changes to a (mutable) value of type A, under effects M.

    Can be observed for changes to a (mutable) value of type A, under effects M. Can be seen as an F[A] bundled with an instance of Observe[M, F], for some F[_].

  14. trait Observe[M[_]] extends Observers[M]

    If we are allowed effects M, then Val[A] can be observed for changes to a (mutable) value of type A (for any A).

  15. final class ObserveSyntaxHelper[M[_], A, U, Δ, Tr[_, _]] extends AnyRef
  16. type ObserveVal[M[_], Val0[_]] = Observe[M] { type Val[A] = Val0[A] }
  17. trait Observers[M[_]] extends AnyRef
  18. trait OnDemandPropagation[M[_], Var[_], Val[_]] extends Propagation[M, Var, Val]
  19. case class OrientedPattern[V <: HList, L <: HList] extends Product with Serializable
  20. case class PartiallyAssignedOrientedPattern[V <: HList, L <: HList](pattern: OrientedPattern[V, L], assignment: Assignment[V]) extends Product with Serializable
  21. case class PartiallyAssignedPattern[V <: HList](pattern: Pattern[V], assignment: Assignment[V]) extends Product with Serializable
  22. sealed trait Pattern[V <: HList] extends AnyRef
  23. trait Propagation[M[_], Var[_], Val0[_]] extends Observe[M]
  24. trait RDom[D] extends SyncDom[D]

    A domain whose deltas can be turned back into updates.

  25. abstract class Recipe[L <: HList, C <: HList, M[_]] extends AnyRef
  26. trait Rel[L <: HList] extends AnyRef

    N-ary relation (where N is determined by L).

    N-ary relation (where N is determined by L). Loosely speaking, it represents the signature of a database table, i.e. the datatypes of the columns.

    An implementation MyRel[A, B] extends Rel[F[A, B]] must ensure that

    • if (rel1: MyRel[T, U]) == (rel2: MyRel[V, W]), i.e. two values of MyRel with different types are equal, then
      • for all row1: F[T, U], row2: F[V, W]
        • row1 == row2F[T, U] =:= F[V, W]

    In other words, the table signature can be somewhat parametric, as long as the actual row values cannot be mistakenly thought to be of a different type.

    Moreover, queries have to specify values of enough columns, so that the types of the remaining columns are uniquely determined by the types of the given columns.

    L

    constituents of this relation.

  27. final case class RelChoice[V <: HList, L <: HList](rel: Rel[L], choose: Choose[V, L]) extends Product with Serializable
  28. trait RelObservable[F[_], A] extends AnyRef

    Relative Observable: whenever Observe[M, F], then this can be converted to Observable[M, A].

  29. trait RelObserve[F[_], G[_]] extends AnyRef

    Relative Observe: whenever ObserveVal[M, F] for some effect M[_], then also ObserveVal[M, G], for the same effect M.

  30. trait Relations[M[_]] extends AnyRef
  31. trait RelativelyComplementedDom[D] extends JoinDom[D]

    Typeclass for domains that are relatively complemented lattices.

  32. trait Splittable[D] extends Dom[D]
  33. trait SplittableDomWithBottom[D] extends Splittable[D] with DomWithBottom[D]
  34. trait SplittableJoinDom[D] extends JoinDom[D] with Splittable[D]
  35. final class Subscription[K[_]] extends AnyVal
  36. trait SyncDom[D] extends Dom[D]
  37. trait TerminalDom[D] extends Dom[D]

    Domain whose values can be artificially caused to fail.

  38. sealed trait TriggerF[F[_], D, Δ, A] extends AnyRef
  39. case class Unchanged[D, Δ[_, _], D0]() extends UpdateResult[D, Δ, D0] with Product with Serializable
  40. sealed abstract class UpdateResult[D, Δ[_, _], D0] extends AnyRef
  41. case class Updated[D, Δ[_, _], D0, D1 <: D](newValue: D1, delta: Δ[D0, D1]) extends UpdateResult[D, Δ, D0] with Product with Serializable

Value Members

  1. object Alternator
  2. object Assessment
  3. object Assignment extends Serializable
  4. object BranchingPropagation
  5. object CostApi
  6. object Dom
  7. object DomWithBottom
  8. object Final
  9. object IDom
  10. object JoinDom
  11. object Observable
  12. object Observers
  13. object OrientedPattern extends Serializable
  14. object Pattern
  15. object Propagation
  16. object RDom
  17. object Rel
  18. object RelObservable
  19. object Relations
  20. object RelativelyComplementedDom
  21. object Splittable
  22. object SplittableDomWithBottom
  23. object SplittableJoinDom
  24. object Subscription
  25. object TriggerF
  26. object UpdateResult

Inherited from AnyRef

Inherited from Any

Ungrouped