CpsSchedulingMonad

trait CpsSchedulingMonad[F[_]] extends CpsConcurrentMonad[F]

Monad, where we can spawn some event and be sure that one be evaluated, event if we drop result.

Interoperability with Future: allows

  async[Future]{
     ...
     await[F](..)
     ...
  }
Source
CpsMonad.scala
trait CpsAsyncMonad[F]
trait CpsTryMonad[F]
trait CpsMonad[F]
trait CpsAwaitable[F]
class Object
trait Matchable
class Any

Type members

Types

type Spawned[A] = F[A]

Inherited types

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

Value members

Abstract methods

def spawn[A](op: => F[A]): F[A]

schedule execution of op somewhere, immediatly. Note, that characteristics of scheduler can vary.

schedule execution of op somewhere, immediatly. Note, that characteristics of scheduler can vary.

Source
CpsMonad.scala

Concrete methods

def join[A](op: F[A]): F[A]
def spawnEffect[A](op: => F[A]): F[F[A]]

Inherited methods

def adoptCallbackStyle[A](source: Try[A] => Unit => Unit): F[A]

called by the source, which accept callback. source is called immediately in adoptCallbackStyle

called by the source, which accept callback. source is called immediately in adoptCallbackStyle

Inherited from
CpsAsyncMonad
Source
CpsMonad.scala
def concurrently[A, B](fa: F[A], fb: F[B]): F[Either[(Try[A], F[B]), (F[A], Try[B])]]

join two computations in such way, that they will execute concurrently.

join two computations in such way, that they will execute concurrently.

Inherited from
CpsConcurrentMonad
Source
CpsMonad.scala
def error[A](e: Throwable): F[A]

represent error e in monadic context.

represent error e in monadic context.

Inherited from
CpsTryMonad
Source
CpsMonad.scala
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 flatMapTry[A, B](fa: F[A])(f: Try[A] => F[B]): F[B]

flatMap over result of checked evaluation of A

flatMap over result of checked evaluation of A

Inherited from
CpsTryMonad
Source
CpsMonad.scala
def fromTry[A](r: Try[A]): F[A]
Inherited from
CpsTryMonad
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 mapTry[A, B](fa: F[A])(f: Try[A] => B): F[B]

map over result of checked evaluation of A

map over result of checked evaluation of A

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

synonym for flatMapTry needed for processing awaits inside mapTry.

synonym for flatMapTry needed for processing awaits inside mapTry.

Inherited from
CpsTryMonad
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
def restore[A](fa: F[A])(fx: Throwable => F[A]): F[A]

restore fa, ie if fa sucessful - return fa, otherwise apply fx to received error.

restore fa, ie if fa sucessful - return fa, otherwise apply fx to received error.

Inherited from
CpsTryMonad
Source
CpsMonad.scala
def tryCancel[A](op: F[A]): F[Unit]

Send cancel signal, which can be accepted or rejected by op flow.

Send cancel signal, which can be accepted or rejected by op flow.

Inherited from
CpsConcurrentMonad
Source
CpsMonad.scala
def tryImpure[A](a: => F[A]): F[A]

try to evaluate async operation and wrap successful or failed result into F.

try to evaluate async operation and wrap successful or failed result into F.

Inherited from
CpsTryMonad
Source
CpsMonad.scala
def tryPure[A](a: => A): F[A]

try to evaluate synchonious operation and wrap successful or failed result into F.

try to evaluate synchonious operation and wrap successful or failed result into F.

Inherited from
CpsTryMonad
Source
CpsMonad.scala
def tryPureAsync[A](a: () => F[A]): F[A]

async shift of tryPure.

async shift of tryPure.

Inherited from
CpsTryMonad
Source
CpsMonad.scala
def withAction[A](fa: F[A])(action: => Unit): F[A]

ensure that action will run before getting value from fa

ensure that action will run before getting value from fa

Inherited from
CpsTryMonad
Source
CpsMonad.scala
def withActionAsync[A](fa: F[A])(action: () => F[Unit]): F[A]

async shift of withAction.

async shift of withAction.

This method is substituted instead withAction, when we use await inside withAction argument.

Inherited from
CpsTryMonad
Source
CpsMonad.scala
def withAsyncAction[A](fa: F[A])(action: => F[Unit]): F[A]

return result of fa after completition of action.

return result of fa after completition of action.

Inherited from
CpsTryMonad
Source
CpsMonad.scala