|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectgnu.jel.OP
gnu.jel.OPcall
public class OPcall
A tree node, representing a method call (field/local variable load).
| Field Summary | |
|---|---|
java.lang.reflect.Member |
m
Holds method to be executed |
int |
nplv
local variable number (in case m=null), number of formal parameters of the method to call otherwise. |
| Fields inherited from class gnu.jel.OP |
|---|
chi, resID, resType, specialTypes, unwrapType |
| Constructor Summary | |
|---|---|
OPcall(int lvarn,
java.lang.Class type)
Prepares access to the local variable (formal parameter) of method. |
|
OPcall(java.util.Stack<OP> paramOPs,
java.lang.reflect.Member m,
boolean aEval)
Prepares a new method/field call/get operation to be added to the code. |
|
| Method Summary | |
|---|---|
void |
compile(ClassFile cf)
Called to generate the code implementing this OP. |
java.lang.Object |
eval()
Attempts to evaluate this function. |
| Methods inherited from class gnu.jel.OP |
|---|
isWidening, isWidening, narrow, typeID, typeIDObject, widen |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public java.lang.reflect.Member m
public int nplv
| Constructor Detail |
|---|
public OPcall(java.util.Stack<OP> paramOPs,
java.lang.reflect.Member m,
boolean aEval)
throws CompilationException
paramOPs - stack holding the operandsm - method/field to call/get.aEval - indicates if the method call should be attempted
at the compile time
CompilationException
public OPcall(int lvarn,
java.lang.Class type)
lvarn - local variable number.type - local variable type.| Method Detail |
|---|
public java.lang.Object eval()
throws java.lang.Exception
eval in class OPjava.lang.Exception - if the function can't be evaluated, or the evaluation
results in error.public void compile(ClassFile cf)
OP
compile in class OPcf - class file with a new open method to write the code into.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||