given_CpsThrowMonad_TailRec_CpsThrowMonadInstanceContext_TailRec

cps.monads.TailRecCpsMonad$package.given_CpsThrowMonad_TailRec_CpsThrowMonadInstanceContext_TailRec

Attributes

Source
TailRecCpsMonad.scala
Graph
Supertypes
trait CpsThrowMonad[TailRec]
trait CpsThrowSupport[TailRec]
trait CpsMonad[TailRec]
class Object
trait Matchable
class Any
Show all
Self type

Members list

Type members

Inherited types

override type Context = CpsThrowMonadInstanceContextBody[TailRec]

Attributes

Inherited from:
CpsThrowMonadInstanceContext
Source
CpsMonadContext.scala
type WF[X] = TailRec[X]

Attributes

Inherited from:
CpsMonad
Source
CpsMonad.scala

Value members

Concrete methods

def error[A](e: Throwable): TailRec[A]

represent error e in monadic context.

represent error e in monadic context.

Attributes

Source
TailRecCpsMonad.scala
def flatMap[A, B](fa: TailRec[A])(f: A => TailRec[B]): TailRec[B]

bind combinator, which compose f over fa

bind combinator, which compose f over fa

Attributes

Source
TailRecCpsMonad.scala
def map[A, B](fa: TailRec[A])(f: A => B): TailRec[B]

map a function f over fa

map a function f over fa

Attributes

Source
TailRecCpsMonad.scala
def pure[A](a: A): TailRec[A]

Pure - wrap value t inside monad.

Pure - wrap value t inside monad.

Note, that pure use eager evaluation, which is different from Haskell.

Attributes

Source
TailRecCpsMonad.scala

Inherited methods

override def apply[T](op: Context => TailRec[T]): TailRec[T]

run op in the context environment.

run op in the context environment.

Attributes

Definition Classes
Inherited from:
CpsThrowMonadInstanceContext
Source
CpsMonadContext.scala
def flatWrap[T](op: => TailRec[T]): TailRec[T]

Wrap and flatten of monadic expression..

Wrap and flatten of monadic expression..

Attributes

Inherited from:
CpsMonad
Source
CpsMonad.scala
def flatten[T](ffa: TailRec[TailRec[T]]): TailRec[T]

Attributes

Inherited from:
CpsMonad
Source
CpsMonad.scala
def wrap[T](op: => T): TailRec[T]

Create monadic expression according to the default operation of choosen monad types. (i.e. delaying for effect monads, starting for eager monand, pure by default)

Create monadic expression according to the default operation of choosen monad types. (i.e. delaying for effect monads, starting for eager monand, pure by default)

Attributes

Inherited from:
CpsMonad
Source
CpsMonad.scala