public class ValuesMap extends MethodProc implements Inlineable
Modifier and Type | Field and Description |
---|---|
static ValuesMap |
valuesMap |
static ValuesMap |
valuesMapWithPos |
argTypes, NO_MATCH, NO_MATCH_AMBIGUOUS, NO_MATCH_BAD_TYPE, NO_MATCH_TOO_FEW_ARGS, NO_MATCH_TOO_MANY_ARGS
noArgs
compilerKey, validateApplyKey
nameKey
Modifier and Type | Method and Description |
---|---|
void |
apply(CallContext ctx)
Call this Procedure using the explicit-CallContext-convention.
|
void |
compile(ApplyExp exp,
Compilation comp,
Target target) |
static void |
compileInlined(LambdaExp lambda,
Expression vals,
int startCounter,
Method matchesMethod,
Compilation comp,
Target target) |
Type |
getReturnType(Expression[] args)
Semi-deprecated - instead should be set at Inline time.
|
int |
numArgs()
Return
minArgs()|(maxArgs<<12) . |
applyN, getParameterType, isApplicable, matchFailAsException, mostSpecific, numParameters, overrideEquivalent, resolveParameterTypes
apply, check0, check1, check2, check3, check4, checkArgCount, checkN, getSetter, getSourceLocation, isSideEffectFree, match0, match1, match2, match3, match4, matchN, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
public static final ValuesMap valuesMap
public static final ValuesMap valuesMapWithPos
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 void apply(CallContext ctx) throws java.lang.Throwable
Procedure
public void compile(ApplyExp exp, Compilation comp, Target target)
compile
in interface Inlineable
public static void compileInlined(LambdaExp lambda, Expression vals, int startCounter, Method matchesMethod, Compilation comp, Target target)
public Type getReturnType(Expression[] args)
Procedure
getReturnType
in class Procedure