CpsContextMonad

cps.CpsContextMonad
trait CpsContextMonad[F[_], Ctx <: CpsMonadContext[F]] extends CpsMonad[F]

Base trait of CpsContextMonad which provide Ctx as a monad context Mixin this trait into your CosMonad in cases, when you monad have internal API and you potentially want to use moand context as generic type.

Attributes

Graph
Supertypes
trait CpsMonad[F]
trait CpsAwaitable[F]
class Object
trait Matchable
class Any
Known subtypes

Members list

Concise view

Type members

Types

type Context = Ctx

Inherited types

type WF[X] = F[X]

Attributes

Inherited from:
CpsMonad

Value members

Abstract methods

def applyContext[T](op: Ctx => F[T]): F[T]

Evaluate operation in context.

Evaluate operation in context.

Attributes

Concrete methods

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

delegated to applyContext

delegated to applyContext

Attributes

See also:

applyContext

Inherited methods

def flatMap[A, B](fa: F[A])(f: A => F[B]): F[B]

bind combinator, which compose f over fa

bind combinator, which compose f over fa

Attributes

Inherited from:
CpsMonad
def lazyPure[T](op: => T): F[T]

Lazy variant of pure, which by default - create monadic expression according to the choosen monad types. (i.e. delaing for effect monads, starting for eager monand, pure by defiault)

Lazy variant of pure, which by default - create monadic expression according to the choosen monad types. (i.e. delaing for effect monads, starting for eager monand, pure by defiault)

Attributes

Inherited from:
CpsMonad
def map[A, B](fa: F[A])(f: A => B): F[B]

map a function f over fa

map a function f over fa

Attributes

Inherited from:
CpsMonad
def pure[T](t: T): F[T]

Pure - wrap value t inside monad.

Pure - wrap value t inside monad.

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

Attributes

Inherited from:
CpsMonad