CanInterpret

trait CanInterpret extends HasSignature
trait HasSignature
trait Signature
class Object
trait Matchable
class Any
trait Effect[Z]
trait AcyclicMemoizer[K, V]
trait AutoInc
trait CyclicMemoizer[K, V]
trait MonoGraph[K, V]
trait PolyGraph[K, V]
trait Choice
object Each.type
object Fail.type
trait ErrorEffect[E, E1]
trait Error[E]
trait ErrorG[M, K, V]
trait ErrorGK[M, K, F, V]
trait ErrorK[F, E]
trait Reader[R]
trait State[S]
trait WriterEffect[W, W1]
trait Writer[W]
trait WriterG[M, K, V]
trait WriterGK[M, K, F, V]
trait WriterK[F, W]

Type members

Classlikes

abstract class Proxy[Fx] extends Proxy[Fx] with ThisInterpreter

Base class for user-defined Proxy Interpreter for this effect.

Base class for user-defined Proxy Interpreter for this effect.

abstract class Stateful[S, F[_]] extends Stateful[S, F] with ThisInterpreter

Base class for user-defined Stateful Interpreter for this effect.

Base class for user-defined Stateful Interpreter for this effect.

abstract class Stateless[F[_]] extends Stateless[F] with ThisInterpreter

Base class for user-defined Stateless Interpreter for this effect.

Base class for user-defined Stateless Interpreter for this effect.

Defines type aliases for Handler, specialized to eliminate this effect.

Defines type aliases for Handler, specialized to eliminate this effect.

sealed trait ThisInterpreter extends Unsealed

Types

final type ThisHandler[F[_], N] = Handler[F, ThisEffect, N]

Alias for Handler, specialized to eliminate this effect.

Alias for Handler, specialized to eliminate this effect.

Inherited types

type !@![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.

From the perspective of effect's user, !@! is just an alias of !!. The final-override happens in Effect.

From the perspective of handler, !@! definition is enriched in a way depending on the chosen Interpreter.

Inherited from:
Signature

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

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

From the perspective of effect's user, ThisEffect is just an alias of this.type. The final-override happens in Effect.

From the perspective of handler, ThisEffect definition is enriched in a way depending on the chosen Interpreter.

Inherited from:
Signature