Package gnu.kawa.reflect
Class Invoke
java.lang.Object
gnu.mapping.PropertySet
gnu.mapping.Procedure
gnu.kawa.reflect.Invoke
- All Implemented Interfaces:
Named
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Invoke
static final Invoke
static final Invoke
static final Invoke
Fields inherited from class gnu.mapping.Procedure
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
Fields inherited from class gnu.mapping.PropertySet
nameKey
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Object
applyToObject
(Procedure proc, CallContext ctx) static PrimProcedure
getStaticMethod
(ClassType type, String name, Expression[] args) Deprecated.static Object
static Object
invokeStatic$V
(Object[] args) protected MethodProc
lookupMethods
(ObjectType dtype, Object name) static Object
static ApplyExp
makeInvokeStatic
(ClassType type, String name, Expression... args) Return an ApplyExp that will call a method with given arguments.int
numArgs()
ReturnminArgs()|(maxArgs<<12)
.Methods inherited from class gnu.mapping.Procedure
apply0, apply1, apply2, apply3, apply4, applyL, applyN, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString
Methods inherited from class gnu.mapping.PropertySet
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
-
Field Details
-
invoke
-
invokeStatic
-
invokeSpecial
-
make
-
-
Constructor Details
-
Invoke
-
Invoke
-
-
Method Details
-
invoke$V
- Throws:
Throwable
-
invokeStatic$V
- Throws:
Throwable
-
make$V
- Throws:
Throwable
-
applyToObject
- Throws:
Throwable
-
numArgs
public int numArgs()Description copied from class:Procedure
ReturnminArgs()|(maxArgs<<12)
. We use a single virtual function to reduce the number of methods in the system, as well as the number of virtual method table entries. We shift by 12 so the number can normally be represented using a sipush instruction, without requiring a constant pool entry. -
lookupMethods
-
makeInvokeStatic
Return an ApplyExp that will call a method with given arguments.- Parameters:
type
- the class containing the method we want to call.name
- the name of the method we want to callargs
- the arguments to the call- Returns:
- an ApplyExp representing the call
-
getStaticMethod
@Deprecated public static PrimProcedure getStaticMethod(ClassType type, String name, Expression[] args) Deprecated.
-