package
monad
Type Members
-
final
case class
ConstantReader[+T](get: T) extends Reader[Any, T] with Product with Serializable
-
final
case class
Done[A](get: A) extends Trampoline[A] with Product with Serializable
-
final
case class
FlatMapped[C, A](start: Trampoline[C], fn: (C) ⇒ Trampoline[A]) extends Trampoline[A] with Product with Serializable
-
final
case class
FlatMappedReader[E, U, +T](first: Reader[E, U], fn: (U) ⇒ Reader[E, T]) extends Reader[E, T] with Product with Serializable
-
final
case class
FlatMappedState[S, F, T, U](start: StateWithError[S, F, T], fn: (T) ⇒ StateWithError[S, F, U]) extends StateWithError[S, F, U] with Product with Serializable
-
sealed
trait
Reader[-Env, +T] extends AnyRef
-
final
case class
ReaderFn[E, +T](fn: (E) ⇒ T) extends Reader[E, T] with Product with Serializable
-
final
case class
StateFn[S, F, T](fn: (S) ⇒ Either[F, (S, T)]) extends StateWithError[S, F, T] with Product with Serializable
-
sealed
trait
StateWithError[S, +F, +T] extends AnyRef
-
sealed
trait
Trampoline[+A] extends AnyRef
Monad to handle mutating input state and possible failures. This is used to interact in the planning phase with existing mutable APIs (like storm or cascading), but retain the ability to compose carefully.