PersistentRelModule

Companion:
object
trait RelModule
trait Module
class Object
trait Matchable
class Any

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

Abstract methods

override def stashable: StashRelModule { type Lang = [K[_], A] =>> Lang[K, A]; }
Definition Classes

Inherited methods

def emptyK[K[_]]: StateK[K]
Inherited from:
Module
def freeRelations[F[_[_], _]](implicit i: Inject[[_] =>> Lang[[_] =>> FreeK[F, _$6], _$7], [_] =>> F[[_] =>> FreeK[F, _$8], _$9]]): Relations[[_] =>> FreeK[F, _$10]]
Inherited from:
RelModule
def interpreter[K[_], S](implicit lens: Lens[S, StateK[K]]): StateInterpreter[K, [_] =>> Lang[K, _$2], S]
Inherited from:
RelModule