CyclicMemoizer

turbolift.effects.CyclicMemoizer
See theCyclicMemoizer companion object
trait CyclicMemoizer[K, V] extends CyclicMemoizerEffect[K, V]

Attributes

Companion
object
Graph
Supertypes
trait CyclicMemoizerEffect[K, V]
trait Effect[CyclicMemoizerSignature[K, V]]
trait CanPerform[CyclicMemoizerSignature[K, V]]
trait Signature
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited classlikes

object handlers

Predefined handlers for this effect.

Predefined handlers for this effect.

Attributes

Inherited from:
CyclicMemoizerEffect
Supertypes
class Object
trait Matchable
class Any

Inherited types

final override type ThisEffect = Effect.this.type

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:
Effect

Value members

Inherited methods

final def &![Fx2 <: Signature](fx2: Fx2): Combine2[Effect.this.type, fx2.type]

Combines with another Effect instance, for the purpose of sharing an Interpreter.

Combines with another Effect instance, for the purpose of sharing an Interpreter.

Attributes

Inherited from:
Effect
final def apply(k: K): Computation[() => V, CyclicMemoizerEffect.this.type]

Attributes

Inherited from:
CyclicMemoizerEffect
final override def domain: Computation[Set[K], CyclicMemoizerEffect.this.type]

Attributes

Definition Classes
Inherited from:
CyclicMemoizerEffect
final override def memo(k: K): Computation[() => V, CyclicMemoizerEffect.this.type]

Attributes

Definition Classes
Inherited from:
CyclicMemoizerEffect
final def perform[A, U <: ThisEffect](f: (CyclicMemoizerSignature[K, V] & Signature { type ThisEffect = U; }) => Computation[A, U]): Computation[A, U]

Lifts an invocation of this Signature's method into the Computation monad.

Lifts an invocation of this Signature's method into the Computation monad.

Attributes

Inherited from:
CanPerform
final override def toMap: Computation[Map[K, V], CyclicMemoizerEffect.this.type]

Attributes

Definition Classes
Inherited from:
CyclicMemoizerEffect

Inherited fields

val impl: EffectImpl[CyclicMemoizer[K, V]]

Object containing type definitions, to be used for implementing Interpreters for this effect.

Object containing type definitions, to be used for implementing Interpreters for this effect.

Attributes

Inherited from:
Effect

Exports

Defined exports

def handler[U](f: K => Computation[V, U & this.type]): this.impl.ThisHandler[Identity, Identity, U]
Exported from handlers

Inherited defined exports

final type Const = Const
Exported from IdConst$

Attributes

Inherited from:
Effect
final type Identity = Identity
Exported from IdConst$

Attributes

Inherited from:
Effect
final type ThisHandler = [F[_], G[_], N] =>> this.impl.ThisHandler[F, G, N]
Exported from EffectImpl

Attributes

Inherited from:
Effect