turbolift.interpreter.Control
final class Control [
S ,
Q ,
F [
_ ],
L ,
N ,
M ]
Access to delimited continuation.
This is a Primitive Effect , provided for implementing custom effects:
It's accessible only from within custom implementations of Interpreter s. Custom effects can invoke Control 's operations to implement their own operations.
It does not require a handler. Invoking Control 's operations does not manifest as a dependency.
See also another primitive effect: Local .
Type parameters
F
result, same as To[+_]
of the corresponding interpreter.
L
effect set, same as Elim
of the corresponding interpreter.
M
effect set, same as Ambient
of the corresponding interpreter.
N
effect set, same as Intro
of the corresponding interpreter.
Q
effect set, same as Unknown
of the corresponding interpreter.
S
local state, same as Local
of the corresponding interpreter.
Attributes
Graph
Reset zoom Hide graph Show graph
Supertypes
class Object
trait Matchable
class Any
Members list
Unwind the stack until the end of the effect's scope.
Unwind the stack until the end of the effect's scope.
Can be thought of as invoking the continuation zero times , as in: capture(_ => value)
.
However, abort(value)
also invokes finalization clauses during stack unwinding.
Attributes
Captures the continuation.
Captures the continuation.
Unwinds the stack up to the end of the effect's scope. The unwound part of the stack is reified as a Continuation object.
Attributes
Like capture , except it also accesses the local state.
Changes scope of the effect.
Changes scope of the effect.
The scope of the effect is defined as either:
The body of the innermost delimit
call.
The the whole scope of the effect's handler, if none of the above is found.
Attributes
Like delimitPut , but modifies the local state, instead of replacing it.
Like delimitPut , but modifies the local state, instead of replacing it.
Attributes
Like delimit , but also replaces the local state.
Like delimit , but also replaces the local state.
Upon exit of delimit 's body, the local state is restored to its original value.
Attributes
Reinterpret a computation.
Reinterpret a computation.
Allows this effect's operations to be invoked inside its own interpreter.
Attributes
Bypass current interpreter.
Bypass current interpreter.
Attributes
Strips away the Ambient
effect.
Strips away the Ambient
effect.
Useful when we need a continuation to outlive the interpreter that captured it.
Attributes