cps.runtime.util.control
package cps.runtime.util.control
Members list
Type members
Classlikes
class BreaksAsyncShift extends AsyncShift[Breaks.type]
Attributes
- Source
- BreaksAsyncShift.scala
- Supertypes
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
- Supertypes
-
class Throwabletrait Serializableclass Objecttrait Matchableclass Any
Attributes
- Source
- ControlThrowableAsyncWrapper.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
object NonLocalReturnsAsyncShift extends AsyncShift[NonLocalReturns.type]
Attributes
- Source
- NonLocalReturnsAsyncShift.scala
- Supertypes
- Self type
In this article