public abstract class ReflectionBase extends Object
invoke(RVMMethod, Object, Object[])
that is called to perform the reflective
method call.Modifier and Type | Field and Description |
---|---|
static ReflectionBase |
nullInvoker
Reflective method invoker that performs no invocation
|
Constructor and Description |
---|
ReflectionBase() |
Modifier and Type | Method and Description |
---|---|
protected static Object |
boxAsBoolean(boolean b) |
protected static Object |
boxAsByte(byte b) |
protected static Object |
boxAsChar(char c) |
protected static Object |
boxAsDouble(double d) |
protected static Object |
boxAsFloat(float f) |
protected static Object |
boxAsInt(int i) |
protected static Object |
boxAsLong(long l) |
protected static Object |
boxAsShort(short s) |
Object |
invoke(RVMMethod method,
Object obj,
Object[] args)
Invoke reflective method being wrapped by this object
|
abstract Object |
invokeInternal(Object obj,
Object[] args)
Invoke reflective method being wrapped by this object, internal method
specific part.
|
private static void |
throwIllegalArgumentException() |
protected static boolean |
unboxAsBoolean(Object obj) |
protected static byte |
unboxAsByte(Object obj) |
protected static char |
unboxAsChar(Object obj) |
protected static double |
unboxAsDouble(Object obj) |
protected static float |
unboxAsFloat(Object obj) |
protected static int |
unboxAsInt(Object obj) |
protected static long |
unboxAsLong(Object obj) |
protected static short |
unboxAsShort(Object obj) |
public static final ReflectionBase nullInvoker
public ReflectionBase()
private static void throwIllegalArgumentException() throws IllegalArgumentException
IllegalArgumentException
protected static boolean unboxAsBoolean(Object obj)
protected static Object boxAsBoolean(boolean b)
protected static byte unboxAsByte(Object obj)
protected static short unboxAsShort(Object obj)
protected static Object boxAsShort(short s)
protected static char unboxAsChar(Object obj)
protected static int unboxAsInt(Object obj)
protected static long unboxAsLong(Object obj)
protected static float unboxAsFloat(Object obj)
protected static Object boxAsFloat(float f)
protected static double unboxAsDouble(Object obj)
protected static Object boxAsDouble(double d)
public abstract Object invokeInternal(Object obj, Object[] args)
obj
- object for virtual method invocationargs
- arguments to method callpublic final Object invoke(RVMMethod method, Object obj, Object[] args)
method
- the method to invokeobj
- object for virtual method invocationargs
- arguments to method call