public class Apply extends ProcedureN
applyToObject, noArgs
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
nameKey
Constructor and Description |
---|
Apply(java.lang.String name,
ApplyToArgs applyToArgs) |
Modifier and Type | Method and Description |
---|---|
static java.lang.Object |
applyToConsumer(Procedure proc,
CallContext ctx) |
static java.lang.Object |
applyToObject(Procedure proc,
CallContext ctx) |
int |
numArgs()
Return
minArgs()|(maxArgs<<12) . |
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
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
public Apply(java.lang.String name, ApplyToArgs applyToArgs)
public int numArgs()
Procedure
minArgs()|(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.public static java.lang.Object applyToConsumer(Procedure proc, CallContext ctx) throws java.lang.Throwable
java.lang.Throwable
public static java.lang.Object applyToObject(Procedure proc, CallContext ctx) throws java.lang.Throwable
java.lang.Throwable