CanPerform

turbolift.internals.effect.CanPerform
trait CanPerform[Z <: Signature] extends Signature

Attributes

Graph
Supertypes
trait Signature
class Object
trait Matchable
class Any
Known subtypes
trait Effect[Z]
trait ChoiceEffect
trait Choice
object Each
object Console
trait Cont[R]
trait CoroutineEffect[I, O, R]
trait ErrorEffect[E, E1]
trait Error[E]
trait ErrorG[M, K, V]
trait ErrorGK[M, K, F, V]
trait ErrorK[F, E]
trait FinalizerEffect[U]
object Finalizer
trait LazyMemoizerEffect[K, V]
trait LazyMemoizer[K, V]
trait MaybeEffect
trait Maybe
object Broken
object Maybe
trait MemoizerEffect[K, V]
trait Memoizer[K, V]
trait RandomEffect
object Random
trait ReaderEffect[R]
trait Reader[R]
trait StateEffect[S]
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]
Show all

Members list

Type members

Inherited and Abstract types

type ThisEffect

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

Value members

Concrete methods

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