Index
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
A
- accept(T) - Method in interface io.github.javactrl.ext.CConsumer
-
The functional interface function
- allOf(CSupplier<? extends T>...) - Static method in class io.github.javactrl.ext.Concurrency
-
A vararg short-cut to
Concurrency.allOf(List)
- allOf(List<? extends CSupplier<? extends T>>) - Static method in class io.github.javactrl.ext.Concurrency
-
This function runs each item of the `components` list until all of them return, or one throws an exception.
- anyOf(CSupplier<? extends T>...) - Static method in class io.github.javactrl.ext.Concurrency
-
A vararg short-cut to
Concurrency.allOf(List)
- anyOf(List<? extends CSupplier<? extends T>>) - Static method in class io.github.javactrl.ext.Concurrency
-
This is mostly the same as
Concurrency.allOf(List)
except it stops execution after any of called components returns a resulting value or throws an exception. - apply(T) - Method in interface io.github.javactrl.ext.CFunction
-
Functional interface function
B
- boundary() - Method in class io.github.javactrl.rt.Unwind
-
This is just a function to override if needed, it can be used to convey some data back to the throw point without winding.
- brackets(CRunnable) - Static method in interface io.github.javactrl.ext.CRunnable
-
This function executes
CRunnable
ignoring allCThrowable
exceptions - brk(Unwind) - Static method in class io.github.javactrl.rt.Unwind
-
This just throws
u
. - brkValue(T) - Static method in class io.github.javactrl.rt.Unwind
-
a short-cut for
Unwind.<R>brk(io.github.javactrl.rt.Unwind)
creating an exception object
C
- CallFrame - Class in io.github.javactrl.rt
-
This class is a representation of a call stack frame.
- CallFrame(Class<?>, String, int, int, int, int, int) - Constructor for class io.github.javactrl.rt.CallFrame
-
Call frame constructor
- CallFrame._Handler - Interface in io.github.javactrl.rt
-
Each function supporting continuations is converted into a lambda with this interface This should be used only be generated code and not directly
- callPredicate - Static variable in class io.github.javactrl.instrument.Transform
-
The predicate to select methods to instrument
- CallPredicate - Interface in io.github.javactrl.instrument
-
This is a predicate specifying if the method must be instrumented
- CConsumer<T> - Interface in io.github.javactrl.ext
-
Same as
java.util.function.Consumer
except it throwsCThrowable
- CFunction<T,
R> - Interface in io.github.javactrl.ext -
Same as
java.util.function.Function
except it throwsCThrowable
- CHECK - Static variable in class io.github.javactrl.instrument.Transform
-
Checks generated IR
- clone() - Method in class io.github.javactrl.rt.CallFrame
- Concurrency - Class in io.github.javactrl.ext
-
Various utilities for cooperative concurrency.
- Concurrency() - Constructor for class io.github.javactrl.ext.Concurrency
- copy() - Method in class io.github.javactrl.rt.CallFrame
-
Shallow frame copy
- createReturn(T) - Static method in class io.github.javactrl.rt.Wind
-
This creates a
Wind
object to make the suspended function on the stack's top return thevalue
on successful winding - createThrow(Throwable) - Static method in class io.github.javactrl.rt.Wind
-
This creates a token to make the suspended function on the stack's top return the
value
- CRunnable - Interface in io.github.javactrl.ext
-
Same as
java.lang.Runnable
except it throwsCThrowable
- CSupplier<T> - Interface in io.github.javactrl.ext
-
Same as
java.util.function.Consumer
except it throwsCThrowable
- CThrowable - Class in io.github.javactrl.rt
-
Common parent for resumable exceptions
- CThrowable() - Constructor for class io.github.javactrl.rt.CThrowable
-
Constructor
- CThrowable(String) - Constructor for class io.github.javactrl.rt.CThrowable
-
Constructor with a message
- Ctrl - Annotation Interface in io.github.javactrl.rt
-
Marks classes for instrumentation
- CTRL_TOKEN - Static variable in class io.github.javactrl.instrument.Transform
-
Throws declaration for enabling instrumentation for a method
D
- DEBUG - Static variable in class io.github.javactrl.instrument.Main
-
dump instrumented classes
- defaultCallPredicate - Static variable in class io.github.javactrl.instrument.Main
-
predicate for method call
E
- enablingAnnotation - Static variable in class io.github.javactrl.instrument.Transform
-
Anotation class to enable this instrumentation for a class
G
H
- handler - Variable in class io.github.javactrl.rt.CallFrame
-
the body of the function
- head - Variable in class io.github.javactrl.rt.Unwind
-
last current captured call frame
I
- instrumentClass(byte[]) - Static method in class io.github.javactrl.instrument.Transform
-
Instrumets class bytecode
- instrumentClass(File, File) - Static method in class io.github.javactrl.instrument.Main
-
Instrumenting a class file
- io.github.javactrl.ext - package io.github.javactrl.ext
-
A package for various extras, it's not strictly needed for delimited continuations usage.
- io.github.javactrl.instrument - package io.github.javactrl.instrument
-
Instrumentation related classes
- io.github.javactrl.rt - package io.github.javactrl.rt
-
Runtime classes
M
- main(String[]) - Static method in class io.github.javactrl.instrument.Main
-
Command line entry point
- Main - Class in io.github.javactrl.instrument
-
Entry point to JavaAgent and AOT instrumentation tool
- Main() - Constructor for class io.github.javactrl.instrument.Main
- methodName - Variable in class io.github.javactrl.rt.CallFrame
-
unique (within the owner class) method id
N
O
P
- payload - Variable in class io.github.javactrl.rt.Unwind
-
some value the
throw
side sends tocatch
sides - predicate - Static variable in class io.github.javactrl.instrument.Main
-
preliminary filter for classes we don't want to instrument
- premain(String, Instrumentation) - Static method in class io.github.javactrl.instrument.Main
-
Java agent entry point
R
- result() - Method in class io.github.javactrl.rt.Wind
- resume(T) - Method in class io.github.javactrl.rt.CallFrame
-
This calls
CallFrame.wind(Wind)
making the top function (e.g. - resumeThrow(Throwable) - Method in class io.github.javactrl.rt.CallFrame
-
This just calls
CallFrame.wind(Wind)
making the top function (e.g. - resumeThrowTop(Throwable) - Method in class io.github.javactrl.rt.CallFrame
-
like
CallFrame.resumeThrow(Throwable)
but isn't supposed to be suspended after - resumeTop(T) - Method in class io.github.javactrl.rt.CallFrame
-
like
CallFrame.resume(Object)
but isn't supposed to be suspended after - run() - Method in interface io.github.javactrl.ext.CRunnable
-
The functional interface function
- run(CallFrame, int[], long[], float[], double[], Object[]) - Method in interface io.github.javactrl.rt.CallFrame._Handler
-
Executes next continuation step
S
- serialVersionUID - Static variable in class io.github.javactrl.rt.CallFrame
-
common serialVersionUID
- state - Variable in class io.github.javactrl.rt.CallFrame
-
current state id
T
- test(String, String) - Method in interface io.github.javactrl.instrument.CallPredicate
-
This method is overriden to select a class to instrument
- TRACE_SERIALIZATION - Static variable in class io.github.javactrl.rt.CallFrame
-
set this to `true` for serialization debugging
- Transform - Class in io.github.javactrl.instrument
-
Byte code instrumentation
- Transform() - Constructor for class io.github.javactrl.instrument.Transform
- tvalue - Variable in class io.github.javactrl.rt.Wind
-
an exception to throw by the suspended function on the stack's top, if it isn't null
U
- Unwind - Class in io.github.javactrl.rt
-
This is a special exception type.
- Unwind() - Constructor for class io.github.javactrl.rt.Unwind
-
constructor with null payload
- Unwind(T) - Constructor for class io.github.javactrl.rt.Unwind
-
Constructor initializing a payload
- usage() - Static method in class io.github.javactrl.instrument.Main
-
Prints usage
V
- v - Variable in class io.github.javactrl.rt.CallFrame
-
local and stack reference variables
- value - Variable in class io.github.javactrl.rt.Wind
-
the value to be returned by the suspended function on the stack's top if
tvalue
is null - vD - Variable in class io.github.javactrl.rt.CallFrame
-
double
local and stack variables - vF - Variable in class io.github.javactrl.rt.CallFrame
-
float
local and stack variables - vI - Variable in class io.github.javactrl.rt.CallFrame
-
int
local and stack variables - vJ - Variable in class io.github.javactrl.rt.CallFrame
-
long
local and stack variables
W
- wind(Wind) - Method in class io.github.javactrl.rt.CallFrame
-
This resumes a suspended execution starting from the current frame and all other frames it called when suspended.
- Wind - Class in io.github.javactrl.rt
-
This is a special exception type.
- Wind(Object, Throwable) - Constructor for class io.github.javactrl.rt.Wind
-
Constructor
- windTop(Wind) - Method in class io.github.javactrl.rt.CallFrame
-
like
CallFrame.wind(Wind)
but isn't supposed to be suspended again, and converts eachCThrowable
intoRuntimeException
_
- _booleanResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
boolean
result - _byteResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
byte
result - _charResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
char
result - _checkException(Throwable) - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from the generated code, running
Wind
handlers in reverse order - _create(Class<?>, String, int, int, int, int, int) - Static method in class io.github.javactrl.rt.CallFrame
-
used by the generated code to create an instance of this class
- _doubleResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
double
result - _floatResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
float
result - _intResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
int
result - _longResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
long
result - _refResult() - Method in class io.github.javactrl.rt.CallFrame
-
This is called from the generated code to get result of this call
- _shortResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code to get
short
result - _skipException(Throwable) - Method in class io.github.javactrl.rt.CallFrame
-
called from the generated code, this doesn't let finally blocks and too generic exception handlers to be invoked on
CThrowable
exceptions - _skipWind(Throwable) - Method in class io.github.javactrl.rt.CallFrame
-
called from the generated code, this doesn't let
CThrowable
catch blocks to be executed onWind
exception - _unwind(Unwind, int) - Method in class io.github.javactrl.rt.CallFrame
-
This is called from the generated code on unwinding
- _voidResult() - Method in class io.github.javactrl.rt.CallFrame
-
This function is called from generated code for functions without return values
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form