gnu.kawa.reflect
public class ClassMethods extends Procedure2
Field Summary | |
---|---|
static ClassMethods | classMethods |
Method Summary | |
---|---|
static MethodProc | apply(Procedure thisProc, Object arg0, Object arg1) |
static MethodProc | apply(ObjectType dtype, String mname, char mode, Language language) Find methods. |
Object | apply2(Object arg0, Object arg1) Create a method or generic of the matching methods. |
static PrimProcedure[] | getMethods(ObjectType dtype, String mname, char mode, ClassType caller, Language language) Return the methods of a class with the specified name and flag. |
static long | selectApplicable(PrimProcedure[] methods, Type[] atypes) Re-order the methods such that the ones that are definite
applicable (all argtypes is subset of parameter type) are first;
those possibly applicable next (argtype overlaps parameter types);
and ending with those definitely not applicable (some argtype does
overlap its parameter type). |
Parameters: dtype class to search mname method name (already mangled, if need be). mode one of 'P' (use invokespecial). 'V' (require this argument even if method is static), or '\0' (otherwise).
Parameters: arg0 a Class, ClassType, or a String, FString or Symbol that names a class. arg1 a method name (a String, FString, or Symbol) Loosely the same as GetNamedPart.make(arg0, arg1), but with some extra conversions and checks.
Parameters: caller if non-null, check that methods are accessible in it.
Returns: an array containing the methods.
Returns: ((number of definitely applicable methods) << 32 + (number of possibly applicable methods.