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