cps.runtime.util.control

Members list

Concise view

Type members

Classlikes

class ControlThrowableAsyncWrapper(val ce: ControlThrowable) extends Throwable

This wrapper for control exception, which is handled by NonFatal(ex)

This wrapper for control exception, which is handled by NonFatal(ex)

The main reason for it;'s existence, that we can't rewrite all monadic operation to handle NonFatalOnly throwables instead NonFatal. (The right way will be to change monadic operations in standard library, but this is a long way. )

So, for supports of returning and break clauses, we change NonLocalReturns.throwReturn(ce) to NonLocalReturnsShift.throwAsyncWrapperReturn(ce)

Attributes

Source:
ControlThrowableAsyncWrapper.scala
Graph
Supertypes
class Throwable
trait Serializable
class Object
trait Matchable
class Any

Attributes

Source:
ControlThrowableAsyncWrapper.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
object NonLocalReturnsAsyncShift extends AsyncShift[NonLocalReturns.type]

Attributes

Source:
NonLocalReturnsAsyncShift.scala
Graph
Supertypes
trait AsyncShift[NonLocalReturns.type]
class Object
trait Matchable
class Any
Self type