StashModule

trait StashModule extends Module
Companion:
object
trait Module
class Object
trait Matchable
class Any
class ListModule[Lang0, State0]
class BranchingListModule[Var0, Val0, Lang0, State0]
class CostListModule[C, Lang0, State0]
class DeferListModule[D, Lang0, State0]
class PropagationListModule[Var0, Val0, Out0, Lang0, State0]
class OnDemandPropagationListModule[Var0, Val0, Out0, Lang0, State0]

Type members

Inherited types

type Lang[K[_], A]

Instructions set.

Instructions set.

Type parameters:
K

allows instructions to refer to the type of program in which they are embedded. That is, K will be instantiated into FreeK[F, ?], where F[_[_], _] is a superset of this instruction set (i.e. there is an injection from Lang to F).

Inherited from:
Module
type StateK[K[_]]

State that the interpreter operates on.

State that the interpreter operates on.

Type parameters:
K

Some states need to store programs or program-producing functions. This type parameter allows the state to talk about the type of programs. It will be instantiated into FreeK[F, ?], where F[_[_], _] is a superset of the instruction set Lang (i.e. there is an injection from Lang to F).

Inherited from:
Module

Value members

Inherited methods

def emptyK[K[_]]: StateK[K]
Inherited from:
Module

Implicits

Implicits

implicit def stashRestore[K[_]]: StashRestore[StateK[K]]