Stateless

turbolift.internals.effect.EffectImpl.Stateless
abstract class Stateless[F[_], G[_], Fx] extends Stateless[F, G, Fx], ThisInterpreter

Base class for any user-defined stateless interpreter for this effect.

Like Stateless interpreter, but specialized for this effect.

Attributes

Graph
Supertypes
class Stateless[F, G, Fx]
trait Interpreter
trait Signature
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited types

final override type Elim = Fx

Set of effects eliminated from computation by this interpreter.

Set of effects eliminated from computation by this interpreter.

Attributes

Inherited from:
ThisInterpreter
final override type From[+A] = F[A]

Input of this interpreter.

Input of this interpreter.

Attributes

Inherited from:
Stateless
final override type Intro = Fx

Set of effects introduced into computation by this interpreter (a.k.a. dependencies).

Set of effects introduced into computation by this interpreter (a.k.a. dependencies).

Attributes

Inherited from:
Stateless
final override type Local = Void

Local state of this interpreter.

Local state of this interpreter.

Attributes

Inherited from:
Stateless
final type ThisEffect = Intro & Ambient

Self-reference to the effect being described by this Signature.

Self-reference to the effect being described by this Signature.

Becomes an alias of this.type, once the signature is inherited from Effect.

Attributes

Inherited from:
Interpreter
final override type To[+A] = G[A]

Output of this interpreter.

Output of this interpreter.

Attributes

Inherited from:
Stateless

Inherited and Abstract types

type Ambient

Phantom type, representing universally quantified type of the corresponding handler.

Phantom type, representing universally quantified type of the corresponding handler.

A Handler acts as a higher-rank function of type:

[A, U] => (From[A] !! (Elim & U)) => To[A] !! (Intro & U)

The Ambient type of this interpreter corresponds to the U type parameter above. See also Unknown.

Attributes

Inherited from:
Interpreter
type Unknown

Phantom type, representing universally quantified type of the corresponding handler.

Phantom type, representing universally quantified type of the corresponding handler.

A Handler acts as a higher-rank function of type:

[A, U] => (From[A] !! (Elim & U)) => To[A] !! (Intro & U)

The Unknown type of this interpreter corresponds to the A type parameter above. See also Ambient.

Attributes

Inherited from:
Interpreter

Value members

Inherited methods

final inline def hasForkJoin: Boolean

Attributes

Inherited from:
Interpreter
final inline def hasRestart: Boolean

Attributes

Inherited from:
Interpreter
final inline def hasZip: Boolean

Attributes

Inherited from:
Interpreter
final inline def isIo: Boolean

Attributes

Inherited from:
Interpreter
final inline def isParallel: Boolean

Attributes

Inherited from:
Interpreter
final inline def isStateful: Boolean

Attributes

Inherited from:
Interpreter
final inline def isStateless: Boolean

Attributes

Inherited from:
Interpreter
final inline def localCount: Int

Attributes

Inherited from:
Interpreter
final override def onInitial: Computation[Local, Intro]

Attributes

Definition Classes
Inherited from:
Stateless
final override def onReturn(aa: F[Unknown], s: Void): Computation[G[Unknown], ThisEffect]

Attributes

Definition Classes
Inherited from:
Stateless
final inline def prompt: Prompt

Attributes

Inherited from:
Interpreter
final def toHandler: Handler[From, To, Elim, Intro]

Creates a Handler from this interpreter.

Creates a Handler from this interpreter.

Attributes

Inherited from:
Interpreter

Inherited and Abstract methods

def onFork(s: Local): (Local, Local)

Attributes

Inherited from:
Interpreter
def onJoin(s1: Local, s2: Local): Local

Attributes

Inherited from:
Interpreter

Attributes

Inherited from:
Interpreter

Attributes

Inherited from:
Stateless
def onUnknown(aa: G[Unknown]): Option[Unknown]

Attributes

Inherited from:
Interpreter
def onZip[A, B, C](aa: G[A], bb: G[B], k: (A, B) => C): To[C]

Attributes

Inherited from:
Interpreter

Inherited fields

An instance of Control dedicated for this interpreter.

An instance of Control dedicated for this interpreter.

Attributes

Inherited from:
Interpreter

An instance of Local dedicated for this interpreter.

An instance of Local dedicated for this interpreter.

Attributes

Inherited from:
Interpreter