com.twitter.algebird

monad

package monad

Visibility
  1. Public
  2. All

Type Members

  1. final case class ConstantReader[+T](get: T) extends Reader[Any, T] with Product with Serializable

  2. final case class Done[A](get: A) extends Trampoline[A] with Product with Serializable

  3. final case class FlatMapped[C, A](start: Trampoline[C], fn: (C) ⇒ Trampoline[A]) extends Trampoline[A] with Product with Serializable

  4. final case class FlatMappedReader[E, U, +T](first: Reader[E, U], fn: (U) ⇒ Reader[E, T]) extends Reader[E, T] with Product with Serializable

  5. 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

    A Trampolining instance that should prevent stack overflow at the expense of performance

  6. sealed trait Reader[-Env, +T] extends AnyRef

  7. final case class ReaderFn[E, +T](fn: (E) ⇒ T) extends Reader[E, T] with Product with Serializable

  8. final case class StateFn[S, F, T](fn: (S) ⇒ Either[F, (S, T)]) extends StateWithError[S, F, T] with Product with Serializable

    Simple wrapper of a function in the Monad

  9. sealed trait StateWithError[S, +F, +T] extends AnyRef

    Monad to handle mutating input state and possible failures.

  10. sealed trait Trampoline[+A] extends AnyRef

Value Members

  1. object EitherMonad

  2. object Reader

  3. object StateWithError

  4. object Trampoline

Ungrouped