Proxy

turbolift.internals.effect.EffectImpl.Proxy
abstract class Proxy[Fx] extends Proxy[Fx], ThisInterpreter

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

Like Proxy Interpreter, but specialized for this effect.

Attributes

Graph
Supertypes
class Proxy[Fx]
trait Trivial
trait Interpreter
trait Signature
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited types

final override type !@![A, U] = NullarySem[A, U]

Abstract type that must be used in definitions of effect's operations.

Abstract type that must be used in definitions of effect's operations.

Becomes an alias of Computation (i.e. same as !!), once the signature is inherited from Effect.

Attributes

Inherited from:
Proxy
type Ambient

Phantom type meaning set of effects remaining after handling this effect.

Phantom type meaning set of effects remaining after handling this effect.

Attributes

Inherited from:
Interpreter
final type BinarySem[A, U] = (ThisControl[A, U], Stan) => Computation[To[Unknown], Ambient]

Attributes

Inherited from:
Interpreter
final override type Dependency = Fx

Set of effects that this interpreter depends on.

Set of effects that this interpreter depends on.

Attributes

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

Input of this interpreter.

Input of this interpreter.

Attributes

Inherited from:
Proxy
final type NullarySem[A, U] = Computation[A, U & Dependency]

Attributes

Inherited from:
Interpreter
final override type Stan = Void

State of this interpreter. Named Stan, to avoid confusion with State effect.

State of this interpreter. Named Stan, to avoid confusion with State effect.

Attributes

Inherited from:
Proxy
final type ThisControl[-A, U] = Control[A, Unknown, Stan, To, U & Dependency, Ambient]

Alias for Control, specialized for this interperter.

Alias for Control, specialized for this interperter.

Attributes

Inherited from:
Interpreter
final override type ThisEffect = Fx

Abstract type that must be used in definitions of effect's operations.

Abstract type that must be used in definitions of effect's operations.

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

Attributes

Inherited from:
ThisInterpreter

Alias for Handler, specialized for this interperter.

Alias for Handler, specialized for this interperter.

Attributes

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

Output of this interpreter.

Output of this interpreter.

Attributes

Inherited from:
Proxy
final type UnarySem[A, U] = ThisControl[A, U] => Computation[To[Unknown], Ambient]

Attributes

Inherited from:
Interpreter
type Unknown

Phantom type meaning the unknown part of the continuation's answer type.

Phantom type meaning the unknown part of the continuation's answer type.

Full answer type is To[Unknown] !! Ambient. The To[+_] part is known to this interpreter. The Unknown and Ambient parts however, are not. They specific to place(s) where the handler (obtained from this interpreter) would be applied.

Attributes

Inherited from:
Interpreter

Value members

Inherited methods

def multishotHint: Boolean

Attributes

Inherited from:
Interpreter
final override def onFork(s: Stan): (Stan, Stan)

Attributes

Definition Classes
HasNotForkJoin -> Interpreter
Inherited from:
HasNotForkJoin (hidden)
final override def onInitial: Computation[Stan, Dependency]

Attributes

Definition Classes
Inherited from:
Proxy
final override def onJoin(s1: Stan, s2: Stan): Stan

Attributes

Definition Classes
HasNotForkJoin -> Interpreter
Inherited from:
HasNotForkJoin (hidden)
final override def onReintro(aa: To[Unknown]): Computation[Unknown, ThisEffect]

Attributes

Definition Classes
HasNotReintro -> Interpreter
Inherited from:
HasNotReintro (hidden)
final override def onReturn(a: Unknown, s: Void): Computation[Unknown, Ambient]

Attributes

Definition Classes
Inherited from:
Proxy
final override def onZip[A, B, C](aa: To[A], bb: To[B], k: (A, B) => C): To[C]

Attributes

Definition Classes
HasNotZip -> Interpreter
Inherited from:
HasNotZip (hidden)
def resurceUnsafeHint: Boolean

Attributes

Inherited from:
Interpreter
def tailResumptiveHint: Boolean

Attributes

Inherited from:
Interpreter
final def toHandler: ThisHandler

Creates a Handler from this interpreter.

Creates a Handler from this interpreter.

Attributes

Inherited from:
Interpreter
def topmostOnlyHint: Boolean

Attributes

Inherited from:
Interpreter

Inherited fields

final val features: Features

Attributes

Inherited from:
Interpreter