Stateful
Super class for any user-defined stateful Interpreter.
Works by translating operations of this effect, into a monad, defined by transformer: T[M, A] = S => M[F[A]]
.
Implementation must provide:
- Definitions for
pure
,flatMap
andzip
for the transformed monad, given MonadZip instance for the inner monad. Functor
instance forF[_]
- Type parameters:
- F
Part of this interpreter's monad transformer.
- S
Part of this interpreter's monad transformer.
Type members
Types
Inherited types
- Inherited from:
- Flow
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
Alias for Handler, specialized for this interperter.
Alias for Handler, specialized for this interperter.
- Inherited from:
- Interpreter