public class MakeAttribute extends NodeConstructor
| Modifier and Type | Field and Description |
|---|---|
static MakeAttribute |
makeAttribute |
static QuoteExp |
makeAttributeExp |
static MakeAttribute |
makeAttributeS |
stringIsTextargTypes, NO_MATCH, NO_MATCH_AMBIGUOUS, NO_MATCH_BAD_TYPE, NO_MATCH_TOO_FEW_ARGS, NO_MATCH_TOO_MANY_ARGSnoArgscompilerKey, compilerXKey, validateApplyKey, validateXApplyKeynameKey| Constructor and Description |
|---|
MakeAttribute() |
| 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) |
Type |
getReturnType(Expression[] args)
Semi-deprecated - instead should be set at Inline time.
|
int |
numArgs()
Return
minArgs()|(maxArgs<<12). |
static void |
startAttribute(Consumer out,
Symbol type) |
compile, compileChild, compileUsingNodeTree, finishNode, makeNode, popNodeConsumer, popNodeContext, pushNodeConsumer, pushNodeContext, setStringIsText, writeContent, writeContent1, writeContentSapplyN, getParameterType, isApplicable, matchFailAsException, mostSpecific, numParameters, overrideEquivalent, resolveParameterTypesapply, 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, toStringgetName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbolpublic static final MakeAttribute makeAttribute
public static final MakeAttribute makeAttributeS
public static final QuoteExp makeAttributeExp
public int numArgs()
ProcedureminArgs()|(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)
Procedurepublic void compileToNode(ApplyExp exp, Compilation comp, ConsumerTarget target)
compileToNode in class NodeConstructorpublic Type getReturnType(Expression[] args)
ProceduregetReturnType in class NodeConstructor