Base trait for custom instances of Memoizer effect.
case object MyMemoizer extends MemoizerEffect[Int, String]
// optional:
type MyMemoizer = MyMemoizer.type
Memoizes a recursive, effectful function. Use the memo
operation in places, where you'd normally want to invoke the function. Provide the actual function as a parameter to handler.
Type parameters
- K
-
input of the memoized function
- V
-
output of the memoized function
Attributes
Members list
Value members
Concrete methods
Snapshot of the domain.
Snapshot of the domain.
The set of all arguments that memo
has been called so far.
Attributes
- Definition Classes
Alias of the default handler for this effect.
Alias of the default handler for this effect.
Defined as an extension, to allow custom redefinitions without restrictions imposed by overriding
Attributes
Invoke the function being memoized.
Invoke the function being memoized.
The function being memoized is not specified, until the handler is called.
Attributes
- Definition Classes
Snapshot of the relation.
Snapshot of the relation.
The map from all arguments that memo
has been called so far, to corresponding results.
Attributes
- Definition Classes
Inherited methods
API for defining custom handlers.
API for defining custom handlers.
Combines with another Effect instance, for the purpose of sharing an Interpreter.
Example of application: implement RWS
-alike handler for Reader &! Writer &! State
composition of effects.
Attributes
- Inherited from:
- Effect
API for defining custom effects.
API for defining custom effects.
Embeds an invocation of this Signature's method into the Computation monad. This provides mechanism for separation between syntax an semantics of effects.
Attributes
- Inherited from:
- Effect
API for defining custom effects.
Inherited fields
API for defining custom handlers.
API for defining custom handlers.
Helper object providing type definitions to be used for implementing Interpreters for this effect.
Attributes
- Inherited from:
- Effect