EitherInterpretation

org.atnos.eff.EitherInterpretation
See theEitherInterpretation companion object

Attributes

Companion
object
Source
EitherInterpretation.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Value members

Concrete methods

def EitherApplicative[E](implicit s: Semigroup[E]): Applicative[[_] =>> Either[E, _$29]]

Attributes

Source
EitherInterpretation.scala
def attemptEither[R, E, A](effect: Eff[R, A])(implicit member: MemberInOut[[_] =>> Either[E, _$5], R]): Eff[R, Either[E, A]]

catch possible left values

catch possible left values

Attributes

Source
EitherInterpretation.scala
def catchLeft[R, E, A](effect: Eff[R, A])(handle: E => Eff[R, A])(implicit member: MemberInOut[[_] =>> Either[E, _$6], R]): Eff[R, A]

catch and handle a possible left value

catch and handle a possible left value

Attributes

Source
EitherInterpretation.scala
def catchLeftCombine[R, E, A](effect: Eff[R, A])(handle: E => Eff[R, A])(implicit member: MemberInOut[[_] =>> Either[E, _$9], R], s: Semigroup[E]): Eff[R, A]

catch and handle a possible left value. The value is the combination of all failures in case of an applicative

catch and handle a possible left value. The value is the combination of all failures in case of an applicative

Attributes

Source
EitherInterpretation.scala
def localEither[R, E, A](e: Eff[R, A])(modify: E => E)(implicit m: MemberInOut[[_] =>> Either[E, _$26], R]): Eff[R, A]

Update the error value, the stack of the Eff computation stays the same

Update the error value, the stack of the Eff computation stays the same

Attributes

Source
EitherInterpretation.scala
def runEither[R, U, E, A](effect: Eff[R, A])(implicit m: Aux[[_] =>> Either[E, _$1], R, U]): Eff[U, Either[E, A]]

run the Either effect, yielding E Either A

run the Either effect, yielding E Either A

Attributes

Source
EitherInterpretation.scala
def runEitherCatchLeft[R, U, E, A](r: Eff[R, A])(handle: E => Eff[U, A])(implicit m: Aux[[_] =>> Either[E, _$7], R, U]): Eff[U, A]

run the Either effect, handling E (with effects) and yielding A

run the Either effect, handling E (with effects) and yielding A

Attributes

Source
EitherInterpretation.scala
def runEitherCombine[R, U, E, A](effect: Eff[R, A])(implicit m: Aux[[_] =>> Either[E, _$2], R, U], s: Semigroup[E]): Eff[U, Either[E, A]]

run the Either effect, yielding E Either A and combine all Es

run the Either effect, yielding E Either A and combine all Es

Attributes

Source
EitherInterpretation.scala
def translateEither[R, U, E1, E2, A](r: Eff[R, A], getter: E1 => E2)(implicit sr: Aux[[_] =>> Either[E1, _$23], R, U], br: MemberIn[[_] =>> Either[E2, _$24], U]): Eff[U, A]

Translate an error effect to another one in the same stack a computation over a "bigger" error (for the full application)

Translate an error effect to another one in the same stack a computation over a "bigger" error (for the full application)

Attributes

Source
EitherInterpretation.scala
def zoomEither[SR, BR, U1, U2, E1, E2, A](r: Eff[SR, A], getter: E1 => E2)(implicit sr: Aux[[_] =>> Either[E1, _$17], SR, U1], br: Aux[[_] =>> Either[E2, _$18], BR, U2], into: IntoPoly[U1, U2]): Eff[BR, A]

Modify the type of the read value

Modify the type of the read value

This changes the stack of the Eff computation

Attributes

Source
EitherInterpretation.scala