Class FormalArgument
- java.lang.Object
-
- org.antlr.stringtemplate.language.FormalArgument
-
public class FormalArgument extends java.lang.ObjectRepresents the name of a formal argument defined in a template: group test; test(a,b) : "$a$ $b$" t() : "blort" Each template has a set of these formal arguments or uses a placeholder object: UNKNOWN (indicating that no arguments were specified such as when a template is loaded from a file.st). Note: originally, I tracked cardinality as well as the name of an attribute. I'm leaving the code here as I suspect something may come of it later. Currently, though, cardinality is not used.
-
-
Field Summary
Fields Modifier and Type Field Description StringTemplatedefaultValueSTIf they specified name="value", store the template herejava.lang.Stringnamestatic intONE_OR_MOREstatic intOPTIONALstatic intREQUIREDstatic java.lang.String[]suffixesstatic java.util.LinkedHashMapUNKNOWNWhen template arguments are not available such as when the user uses "new StringTemplate(...)", then the list of formal arguments must be distinguished from the case where a template can specify args and there just aren't any such as the t() template above.static intZERO_OR_MORE
-
Constructor Summary
Constructors Constructor Description FormalArgument(java.lang.String name)FormalArgument(java.lang.String name, StringTemplate defaultValueST)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object o)static java.lang.StringgetCardinalityName(int cardinality)java.lang.StringtoString()
-
-
-
Field Detail
-
OPTIONAL
public static final int OPTIONAL
- See Also:
- Constant Field Values
-
REQUIRED
public static final int REQUIRED
- See Also:
- Constant Field Values
-
ZERO_OR_MORE
public static final int ZERO_OR_MORE
- See Also:
- Constant Field Values
-
ONE_OR_MORE
public static final int ONE_OR_MORE
- See Also:
- Constant Field Values
-
suffixes
public static final java.lang.String[] suffixes
-
UNKNOWN
public static final java.util.LinkedHashMap UNKNOWN
When template arguments are not available such as when the user uses "new StringTemplate(...)", then the list of formal arguments must be distinguished from the case where a template can specify args and there just aren't any such as the t() template above.
-
name
public java.lang.String name
-
defaultValueST
public StringTemplate defaultValueST
If they specified name="value", store the template here
-
-
Constructor Detail
-
FormalArgument
public FormalArgument(java.lang.String name)
-
FormalArgument
public FormalArgument(java.lang.String name, StringTemplate defaultValueST)
-
-