public interface CompilationContext<V,L>
Modifier and Type | Interface and Description |
---|---|
static class |
CompilationContext.Type |
Modifier and Type | Method and Description |
---|---|
void |
add() |
default void |
block(List<V> inputs,
List<V> outputs,
Consumer<CompilationContext<V,L>> body) |
void |
branch(L l) |
void |
branchIfEq(L l) |
void |
branchIfNEq(L l) |
void |
checkInputs(CompilationContext.Type... types) |
void |
checkOutputs(CompilationContext.Type... types) |
default void |
compileDataFlow(FloatBinaryOperator op) |
default void |
compileDataFlow(FloatUnaryOperator op) |
void |
convertTo(CompilationContext.Type type) |
L |
createLabel() |
V |
createLocalVariable(CompilationContext.Type type) |
void |
div() |
void |
dup() |
void |
endBlock() |
V |
findState(CompilationContext.Type type,
Object owner,
String name) |
List<V> |
getInputs() |
List<V> |
getOutputs() |
void |
insert(L l) |
void |
invokeInterface(Method method) |
default void |
load(boolean b) |
void |
load(double c) |
void |
load(float c) |
void |
load(int c) |
void |
load(long c) |
void |
load(V s) |
void |
loadArray() |
<C> void |
loadEnv(Class<C> type,
C value) |
default void |
loadInput(int i) |
default void |
loadState(CompilationContext.Type type,
Object owner,
String name) |
static Method |
method(Class<?> owner,
String name,
Class<?>... params) |
default void |
move(V s,
V t) |
void |
mul() |
void |
neg() |
void |
pop() |
void |
rem() |
void |
startBlock(List<V> inputs,
List<V> outputs) |
void |
store(V t)
Deprecated.
|
void |
store(V t,
Runnable body) |
void |
storeArray() |
default void |
storeOutput(int i)
Deprecated.
|
default void |
storeOutput(int i,
Runnable body) |
default void |
storeState(CompilationContext.Type type,
Object owner,
String name)
Deprecated.
|
default void |
storeState(CompilationContext.Type type,
Object owner,
String name,
Runnable body) |
void |
sub() |
static CompilationContext.Type |
typeOf(Class<?> cls) |
static CompilationContext.Type typeOf(Class<?> cls)
V createLocalVariable(CompilationContext.Type type)
V findState(CompilationContext.Type type, Object owner, String name)
void endBlock()
void checkInputs(CompilationContext.Type... types)
void checkOutputs(CompilationContext.Type... types)
L createLabel()
void neg()
void add()
void sub()
void mul()
void div()
void rem()
void convertTo(CompilationContext.Type type)
default void load(boolean b)
void load(int c)
void load(float c)
void load(long c)
void load(double c)
void load(V s)
void loadArray()
<C> void loadEnv(Class<C> type, C value)
@Deprecated void store(V t)
void storeArray()
void insert(L l)
void branch(L l)
void branchIfEq(L l)
void branchIfNEq(L l)
void dup()
void pop()
void invokeInterface(Method method)
default void loadInput(int i)
@Deprecated default void storeOutput(int i)
default void storeOutput(int i, Runnable body)
default void loadState(CompilationContext.Type type, Object owner, String name)
@Deprecated default void storeState(CompilationContext.Type type, Object owner, String name)
default void storeState(CompilationContext.Type type, Object owner, String name, Runnable body)
default void compileDataFlow(FloatUnaryOperator op)
default void compileDataFlow(FloatBinaryOperator op)