ConsumerEffect

turbolift.effects.ConsumerEffect
trait ConsumerEffect[A] extends Effect[ConsumerSignature[A]], ConsumerSignature[A]

Attributes

Graph
Supertypes
trait Effect[ConsumerSignature[A]]
trait CanPerform[ConsumerSignature[A]]
trait Signature
class Object
trait Matchable
class Any
Show all

Members list

Type members

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

Concrete methods

final override def await: Computation[A, this.type]

Attributes

Definition Classes
final def handler[U](initial: Computation[Step[A, U], U]): impl.ThisHandler[Const[Unit], Const[Unit], U]

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 inline def perform[A, U <: ThisEffect](inline f: (ConsumerSignature[A] & 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

Inherited fields

val impl: EffectImpl[ConsumerEffect[A]]

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

Inherited defined exports

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

Attributes

Inherited from:
Effect