ErrorG

trait ErrorG[M[_, _], K, V] extends ErrorEffect[M[K, V], (K, V)]
trait ErrorEffect[M[K, V], (K, V)]
trait ErrorSig[M[K, V], (K, V)]
trait Effect[ErrorSig[M[K, V], (K, V)]]
trait HasSignature
trait CanPerform[ErrorSig[M[K, V], (K, V)]]
trait Signature
class Object
trait Matchable
class Any

Type members

Inherited classlikes

abstract class Proxy[Fx] extends Proxy[Fx] with ThisInterpreter

Base class for user-defined Proxy Interpreter for this effect.

Base class for user-defined Proxy Interpreter for this effect.

Inherited from:
CanInterpret
abstract class Stateful[S, F[_]] extends Stateful[S, F] with ThisInterpreter

Base class for user-defined Stateful Interpreter for this effect.

Base class for user-defined Stateful Interpreter for this effect.

Inherited from:
CanInterpret
abstract class Stateless[F[_]] extends Stateless[F] with ThisInterpreter

Base class for user-defined Stateless Interpreter for this effect.

Base class for user-defined Stateless Interpreter for this effect.

Inherited from:
CanInterpret

Defines type aliases for Handler, specialized to eliminate this effect.

Defines type aliases for Handler, specialized to eliminate this effect.

Inherited from:
CanInterpret
sealed trait ThisInterpreter extends Unsealed
Inherited from:
CanInterpret
object handlers

Predefined handlers for this effect.

Predefined handlers for this effect.

Inherited from:
ErrorEffect

Inherited types

final override type !@![+A, U] = Computation[A, U]
Inherited from:
CanPerform
final override type ThisEffect = Effect
Inherited from:
Effect
final type ThisHandler[F[_], N] = Handler[F, ThisEffect, N]

Alias for Handler, specialized to eliminate this effect.

Alias for Handler, specialized to eliminate this effect.

Inherited from:
CanInterpret

Value members

Inherited methods

final def &![Fx2 <: HasSignature](fx2: Fx2): Combine2[ErrorG[M, K, V], Fx2]

Combines with another Effect instance, so that a single Handler for 2 effects can be created.

Combines with another Effect instance, so that a single Handler for 2 effects can be created.

Inherited from:
Effect
final def fromEither[A](x: Either[(K, V), A]): Computation[A, ErrorG[M, K, V]]
Inherited from:
ErrorEffect
final def fromOption[A](x: Option[A])(e: => (K, V)): Computation[A, ErrorG[M, K, V]]
Inherited from:
ErrorEffect
final def fromTry[A](x: Try[A])(implicit ev: Throwable <:< (K, V)): Computation[A, ErrorG[M, K, V]]
Inherited from:
ErrorEffect
final def handler(implicit E: (K, V) =:= M[K, V]): Free[[_] =>> Either[M[K, V], _$4]]

Default handler for this effect.

Default handler for this effect.

Inherited from:
ErrorEffect
final override def katch[A, U <: ErrorG[M, K, V]](body: Computation[A, U])(f: M[K, V] => Computation[A, U]): Computation[A, U]
Definition Classes
Inherited from:
ErrorEffect
final def perform[A, U <: ThisEffect](f: ErrorSig[M[K, V], (K, V)] & Signature { type ThisEffect = U; } => A !@! U { def apply(z: ErrorSig[M[K, V], (K, V)] & Signature { type ThisEffect = U; }): 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.

The purpose of perform is similar to:

  • send function form various effect systems (Eff monad, etc.)
  • serviceWith from ZIO 1.x.
  • serviceWithZIO from ZIO 2.x.

⚠️ Scaladoc displays the definition of perform as more complex than it actually is:

final def perform[A, U <: ThisEffect](f: (z: Z & Signature { type ThisEffect = U }) => z.!@![A, U]): A !! U
Inherited from:
CanPerform
final def pure[A](a: A): Computation[A, ThisEffect]

Like !!.pure(a), but with effect-set up-casted to ThisEffect

Like !!.pure(a), but with effect-set up-casted to ThisEffect

Inherited from:
CanPerform
final def raise[K, V1](k: K, v: V1)(implicit ev: (K, V1) <:< (K, V)): Computation[Unit, ErrorG[M, K, V]]
Inherited from:
ErrorEffect
final override def raise(e: (K, V)): Computation[Nothing, ErrorG[M, K, V]]
Definition Classes
Inherited from:
ErrorEffect
final def raises[K, V](k: K, v: V)(implicit ev: (K, V) <:< M[K, V]): Computation[Unit, ErrorG[M, K, V]]
Inherited from:
ErrorEffect
final override def raises(e: M[K, V]): Computation[Nothing, ErrorG[M, K, V]]
Definition Classes
Inherited from:
ErrorEffect