Handler

object Handler extends HandlerExtensions
Companion:
class
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Handler.type

Type members

Types

type Const[Result, Elim, Intro] = Handler[[X] =>> Result, Elim, Intro]
type Free[Result[_], Elim] = Handler[Result, Elim, Any]
type FreeConst[Result, Elim] = Handler[[X] =>> Result, Elim, Any]
type FreeId[Elim] = Handler[[X] =>> X, Elim, Any]
type Id[Elim, Intro] = Handler[[X] =>> X, Elim, Intro]

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from:
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Inherited from:
Mirror

Value members

Concrete methods

def flatten[F[_], L, N1, N2](h: Computation[Handler[F, L, N1], N2]): Handler[F, L, N1 & N2]

Extensions

Inherited extensions

extension [E, L, N](thiz: Handler[[_] =>> Either[E, _$7], L, N])
def getOrDie(message: E => String): Id[L, N]
Inherited from:
HandlerExtensions
def getOrElse(default: E => Nothing): Id[L, N]
Inherited from:
HandlerExtensions
def mapLeft[E2](f: E => E2): Handler[[_] =>> Either[E2, _$8], L, N]
Inherited from:
HandlerExtensions
def toOption: Handler[Option, L, N]
Inherited from:
HandlerExtensions
def toTry(implicit ev: E <:< Throwable): Handler[Try, L, N]
Inherited from:
HandlerExtensions
@targetName("flattenEithers")
def |||![E2, L2, N2](that: Handler[[_] =>> Either[E2, _$9], L2, N2]): Handler[[_] =>> Either[E | E2, _$10], L & L2, N & N2]
Inherited from:
HandlerExtensions
extension [L, N](thiz: Handler[Option, L, N])
def getOrDie(message: => String): Id[L, N]
Inherited from:
HandlerExtensions
def getOrElse(default: => Nothing): Id[L, N]
Inherited from:
HandlerExtensions
def toEither[E](e: => E): Handler[[_] =>> Either[E, _$5], L, N]
Inherited from:
HandlerExtensions
def toTry(e: => Throwable): Handler[Try, L, N]
Inherited from:
HandlerExtensions
def toVector: Handler[Vector, L, N]
Inherited from:
HandlerExtensions
def unsafeGet: Id[L, N]
Inherited from:
HandlerExtensions
@targetName("flattenOptions")
def |||![L2, N2](that: Handler[Option, L2, N2]): Handler[Option, L & L2, N & N2]
Inherited from:
HandlerExtensions
extension [S, L, N](thiz: Handler[Tuple2, L, N])
def ***![S2, S3, L2, N2](that: Handler[Tuple2, L2, N2])(using ET: ExtendTuple[S, S2, S3]): Handler[Tuple2, L & L2, N & N2]
Inherited from:
HandlerExtensions
def dropState: Id[L, N]
Inherited from:
HandlerExtensions
def eval: Id[L, N]
Inherited from:
HandlerExtensions
def exec: Handler[[X] =>> S, L, N]
Inherited from:
HandlerExtensions
def justState: Handler[[X] =>> S, L, N]
Inherited from:
HandlerExtensions
def mapState[S2](f: S => S2): Handler[Tuple2, L, N]
Inherited from:
HandlerExtensions