Package gnu.jel
Class OPcall
- java.lang.Object
-
- gnu.jel.OP
-
- gnu.jel.OPcall
-
public class OPcall extends OP
A tree node, representing a method call (field/local variable load).
-
-
Field Summary
Fields Modifier and Type Field Description protected static int[]
arrayStoreCodes
protected static byte[]
arrayTypeCodes
java.lang.reflect.Member
m
Holds method to be executedint
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
Constructors Constructor Description OPcall(int lvarn, java.lang.Class<?> type)
Prepares access to the local variable (formal parameter) of method.OPcall(java.lang.reflect.Member m, int np, java.util.Stack<OP> paramOPs, boolean aEval)
Prepares a new method/field call/get operation to be added to the code.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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
-
-
-
-
Field Detail
-
m
public java.lang.reflect.Member m
Holds method to be executed
-
nplv
public int nplv
local variable number (in case m=null), number of formal parameters of the method to call otherwise.
-
arrayTypeCodes
protected static final byte[] arrayTypeCodes
-
arrayStoreCodes
protected static final int[] arrayStoreCodes
-
-
Constructor Detail
-
OPcall
public OPcall(java.lang.reflect.Member m, int np, java.util.Stack<OP> paramOPs, boolean aEval) throws CompilationException
Prepares a new method/field call/get operation to be added to the code.- Parameters:
m
- method/field to call/get.np
- number of actual formal parameters (not considering "this")paramOPs
- stack holding the operandsaEval
- indicates if the method call should be attempted at the compile time- Throws:
CompilationException
-
OPcall
public OPcall(int lvarn, java.lang.Class<?> type)
Prepares access to the local variable (formal parameter) of method.- Parameters:
lvarn
- local variable number.type
- local variable type.
-
-