ErrorEffect

turbolift.effects.ErrorEffect
trait ErrorEffect[E, E1] extends Effect[ErrorSignature[E, E1]], ErrorSignature[E, E1]

Attributes

Graph
Supertypes
trait ErrorSignature[E, E1]
trait Effect[ErrorSignature[E, E1]]
trait CanPerform[ErrorSignature[E, E1]]
trait Signature
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Error[E]
trait ErrorG[M, K, V]
trait ErrorGK[M, K, F, V]
trait ErrorK[F, E]

Members list

Type members

Classlikes

object handlers

Predefined handlers for this effect.

Predefined handlers for this effect.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
handlers.type

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 def catchAll[A, U <: this.type](body: Computation[A, U])(f: E => A): Computation[A, U]
final override def catchAllEff[A, U <: this.type](body: Computation[A, U])(f: E => Computation[A, U]): Computation[A, U]

Attributes

Definition Classes
final def catchSome[A, U <: this.type](body: Computation[A, U])(f: PartialFunction[E, A]): Computation[A, U]
final def catchSomeEff[A, U <: this.type](body: Computation[A, U])(f: PartialFunction[E, Computation[A, U]]): Computation[A, U]
final def fromEither[A](x: Either[E1, A]): Computation[A, this.type]
final def fromOption[A](x: Option[A])(e: => E1): Computation[A, this.type]
final def fromTry[A](x: Try[A])(using ev: Throwable <:< E1): Computation[A, this.type]
final override def raise(e: E1): Computation[Nothing, this.type]

Attributes

Definition Classes
final def raise[K, V1](k: K, v: V1)(using ev: (K, V1) <:< E1): Computation[Unit, this.type]
final override def raises(e: E): Computation[Nothing, this.type]

Attributes

Definition Classes
final def raises[K, V](k: K, v: V)(using ev: (K, V) <:< E): Computation[Unit, this.type]
final override def toEither[A, U <: this.type](body: Computation[A, U]): Computation[Either[E, A], U]

Attributes

Definition Classes

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: (ErrorSignature[E, E1] & 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[this.type]

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