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[]arrayStoreCodesprotected static byte[]arrayTypeCodesjava.lang.reflect.MembermHolds method to be executedintnplvlocal 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 voidcompile(ClassFile cf)Called to generate the code implementing this OP.java.lang.Objecteval()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 CompilationExceptionPrepares 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.
-
-