Outcome

object Outcome
Companion:
class
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Outcome.type

Type members

Classlikes

final case class Error(e: Throwable, crashReporter: PartialFunction[Throwable, String]) extends Outcome[Nothing]
Companion:
object
object Error
Companion:
class
final case class Result[+A](state: A, globalEvents: Batch[GlobalEvent]) extends Outcome[A]

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from:
Mirror

The name of the type

The name of the type

Inherited from:
Mirror

Value members

Concrete methods

def apply[A](state: => A): Outcome[A]
def apply[A](state: => A, globalEvents: => Batch[GlobalEvent]): Outcome[A]
def combine[A, B](oa: Outcome[A], ob: Outcome[B]): Outcome[(A, B)]
def combine3[A, B, C](oa: Outcome[A], ob: Outcome[B], oc: Outcome[C]): Outcome[(A, B, C)]
def flatten[A](faa: Outcome[Outcome[A]]): Outcome[A]
def join[A](faa: Outcome[Outcome[A]]): Outcome[A]
def map2[A, B, C](oa: Outcome[A], ob: Outcome[B])(f: (A, B) => C): Outcome[C]
def map3[A, B, C, D](oa: Outcome[A], ob: Outcome[B], oc: Outcome[C])(f: (A, B, C) => D): Outcome[D]
def merge[A, B, C](oa: Outcome[A], ob: Outcome[B])(f: (A, B) => C): Outcome[C]
def merge3[A, B, C, D](oa: Outcome[A], ob: Outcome[B], oc: Outcome[C])(f: (A, B, C) => D): Outcome[D]
def raiseError(throwable: Throwable): Error
def sequenceList[A](l: List[Outcome[A]]): Outcome[List[A]]
def unapply[A](outcome: Outcome[A]): Option[(A, Batch[GlobalEvent])]

Givens

Givens

given derived$CanEqual[A_$_L, A_$_R](implicit x$0: CanEqual[A_$_L, A_$_R]): CanEqual[Outcome[A_$_L], Outcome[A_$_R]]

Extensions

Extensions

extension [A](b: Batch[Outcome[A]])
extension [A](b: NonEmptyBatch[Outcome[A]])
extension [A](l: NonEmptyList[Outcome[A]])
extension [A](l: List[Outcome[A]])
extension [A, B, C](t: (Outcome[A], Outcome[B], Outcome[C]))
def combine: Outcome[(A, B, C)]
def map3[D](f: (A, B, C) => D): Outcome[D]
def merge[D](f: (A, B, C) => D): Outcome[D]
extension [A, B](t: (Outcome[A], Outcome[B]))
def combine: Outcome[(A, B)]
def map2[C](f: (A, B) => C): Outcome[C]
def merge[C](f: (A, B) => C): Outcome[C]