StashDeferModule

trait StashDeferModule[D] extends DeferModule[D] with StashModule
trait DeferModule[D]
trait Module
class Object
trait Matchable
class Any
class DeferListModule[D, 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
def interpreter[K[_], S](implicit lens: Lens[S, StateK[K]]): StateInterpreter[K, [_] =>> Lang[K, _$10], S]
Inherited from:
DeferModule

Implicits

Inherited implicits

implicit def freeDeferApi[F[_[_], _]](implicit i: Inject[[_] =>> Lang[[_] =>> FreeK[F, _$4], _$5], [_] =>> F[[_] =>> FreeK[F, _$6], _$7]]): Defer[[_] =>> FreeK[F, _$8], D]
Inherited from:
DeferModule
implicit def stashRestore[K[_]]: StashRestore[StateK[K]]
Inherited from:
StashModule