DecSet

object DecSet
Companion:
class
class Object
trait Matchable
class Any
DecSet.type

Type members

Classlikes

final case class Diff[A](value: DecSet[A]) extends Update[A]
final case class Join[A](value: DecSet[A]) extends Update[A]
final case class Removed[A](value: Set[A]) extends AnyVal
sealed abstract class Update[A]

Types

final type Delta[A] = Removed[A]

Value members

Concrete methods

def apply[A](as: A*): DecSet[A]
def branchAndExec[M[_]](conts: Set[M[Unit]])(implicit P: BranchingPropagation[M]): M[Unit]

Convenience method to add an exclusive choice of arbitrary free programs to continue. When the choice is made, the chosen program is executed.

Convenience method to add an exclusive choice of arbitrary free programs to continue. When the choice is made, the chosen program is executed.

def branchAndExec[M[_]](conts: M[Unit]*)(implicit M: BranchingPropagation[M]): M[Unit]
def branchC[M[_], A](as: Set[A])(implicit P: BranchingPropagation[M]): Cont[M[Unit], A]

Convenience method to add an exclusive choice of multiple possibilities, presented as a continuation of the chosen element. Note that a "branching cell" (see init) is added for each callback that is registered on the returned continuation. Thus, if two callbacks are registered on the returned continuation, it will have the effect of making a choice from the cartesian product as × as. If this is not desired, use init directly.

Convenience method to add an exclusive choice of multiple possibilities, presented as a continuation of the chosen element. Note that a "branching cell" (see init) is added for each callback that is registered on the returned continuation. Thus, if two callbacks are registered on the returned continuation, it will have the effect of making a choice from the cartesian product as × as. If this is not desired, use init directly.

def branchC[M[_], A](as: A*)(implicit M: BranchingPropagation[M]): Cont[M[Unit], A]
def init[M[_], A](as: Set[A])(implicit P: BranchingPropagation[M]): M[Var[DecSet[A]]]
def oneOf[M[_], A](as: A*)(implicit P: BranchingPropagation[M]): M[Var[DecSet[A]]]
def singleton[A](a: A): DecSet[A]
def wrap[A](as: Set[A]): DecSet[A]

Implicits

Implicits

implicit def domInstance[A]: Dom[A]
implicit def finalInstance[A]: Aux[DecSet[A], A]