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.

Source:
CpsMonadContext.scala
trait CpsMonad[F]
trait CpsAwaitable[F]
class Object
trait Matchable
class Any

Type members

Types

override type Context = Ctx

Inherited types

type WF[X] = F[X]
Inherited from:
CpsMonad
Source:
CpsMonad.scala

Value members

Abstract methods

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

Evaluate operation in context.

Evaluate operation in context.

Source:
CpsMonadContext.scala

Concrete methods

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

delegated to applyContext

delegated to applyContext

See also:

applyContext

Source:
CpsMonadContext.scala

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

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

map a function f over fa

map a function f over fa

Inherited from:
CpsMonad
Source:
CpsMonad.scala
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.

Inherited from:
CpsMonad
Source:
CpsMonad.scala