public class MakeProcInst extends NodeConstructor
Modifier and Type | Field and Description |
---|---|
static MakeProcInst |
makeProcInst |
stringIsText
argTypes, NO_MATCH, NO_MATCH_AMBIGUOUS, NO_MATCH_BAD_TYPE, NO_MATCH_TOO_FEW_ARGS, NO_MATCH_TOO_MANY_ARGS
noArgs
compilerKey, compilerXKey, validateApplyKey, validateXApplyKey
nameKey
Constructor and Description |
---|
MakeProcInst() |
Modifier and Type | Method and Description |
---|---|
void |
apply(CallContext ctx)
Call this Procedure using the explicit-CallContext-convention.
|
void |
compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
int |
numArgs()
Return
minArgs()|(maxArgs<<12) . |
static void |
procInst$C(java.lang.Object target,
java.lang.Object content,
Consumer out) |
static void |
procInst$X(java.lang.Object target,
java.lang.Object content,
CallContext ctx) |
compile, compileChild, compileUsingNodeTree, finishNode, getReturnType, makeNode, popNodeConsumer, popNodeContext, pushNodeConsumer, pushNodeContext, setStringIsText, writeContent, writeContent1, writeContentS
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 MakeProcInst makeProcInst
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 void procInst$C(java.lang.Object target, java.lang.Object content, Consumer out)
public static void procInst$X(java.lang.Object target, java.lang.Object content, CallContext ctx)
public void apply(CallContext ctx)
Procedure
public void compileToNode(ApplyExp exp, Compilation comp, ConsumerTarget target)
compileToNode
in class NodeConstructor