gnu.kawa.reflect
public class Invoke extends ProcedureN implements CanInline
Field Summary | |
---|---|
static Invoke | invoke |
static Invoke | invokeSpecial |
static Invoke | invokeStatic |
static Invoke | make |
Constructor Summary | |
---|---|
Invoke(String name, char kind) | |
Invoke(String name, char kind, Language language) |
Method Summary | |
---|---|
void | apply(CallContext ctx) |
Object | applyN(Object[] args) |
static int | checkKnownClass(Type type, Compilation comp) Check if class exists. |
protected PrimProcedure[] | getMethods(ObjectType ctype, String mname, ClassType caller) |
static PrimProcedure | getStaticMethod(ClassType type, String name, Expression[] args) |
Expression | inline(ApplyExp exp, ExpWalker walker) |
static ApplyExp | inlineClassName(ApplyExp exp, int carg, InlineCalls walker) Resolve class specifier to ClassType at inline time.
|
static Object | invokeStatic$V(Object[] args) |
static Object | invoke$V(Object[] args) |
protected MethodProc | lookupMethods(ObjectType dtype, Object name) |
static ApplyExp | makeInvokeStatic(ClassType type, String name, Expression[] args) Return an ApplyExp that will call a method with given arguments. |
static Object | make$V(Object[] args) |
int | numArgs() |
Returns: 1 if class actually exists; -1 is class should exist, but doesn't; and 0 otherwise.
Parameters: type the class containing the method we want to call. name the name of the method we want to call args the arguments to the call
Returns: an ApplyExp representing the call