|
Home |
News |
Wiki |
About StringTemplate |
Feedback |
Support |
Bugs |
|
|
Latest version is 3.2. Download now! » |
![]() |
|
ASTExpr
org.antlr.stringtemplate.language
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Field Summary | |
static java.lang.String |
DEFAULT_ATTRIBUTE_NAME
|
static java.lang.String |
DEFAULT_ATTRIBUTE_NAME_DEPRECATED
|
static java.lang.String |
DEFAULT_INDEX_VARIABLE_NAME
|
static java.lang.String |
DEFAULT_INDEX0_VARIABLE_NAME
|
static java.lang.String |
DEFAULT_MAP_KEY_NAME
|
static java.lang.String |
DEFAULT_MAP_VALUE_NAME
|
static java.util.Map |
defaultOptionValues
|
static java.lang.String |
EMPTY_OPTION
Using an expr option w/o value, makes options table hold EMPTY_OPTION value for that key. |
(package private) antlr.collections.AST |
exprTree
|
(package private) java.lang.String |
formatString
A cached value of option format=expr |
static StringTemplate |
MAP_KEY_VALUE
Used to indicate "default:key" in maps within groups |
(package private) java.lang.String |
nullValue
For null values in iterated attributes and single attributes that are null, use this value instead of skipping. |
(package private) java.util.Map |
options
store separator etc... |
(package private) java.lang.String |
separatorString
A cached value of separator=expr from the <...> expression. |
static java.util.Set |
supportedOptions
John Snyders gave me an example implementation for this checking |
(package private) java.lang.String |
wrapString
A cached value of wrap=expr from the <...> expression. |
| Fields inherited from class org.antlr.stringtemplate.language.Expr |
enclosingTemplate, indentation |
| Constructor Summary | |
ASTExpr(StringTemplate enclosingTemplate,
antlr.collections.AST exprTree,
java.util.Map options)
|
|
| Method Summary | |
protected java.lang.Object |
accessField(java.lang.reflect.Field f,
java.lang.Object o,
java.lang.Object value)
|
java.lang.Object |
add(java.lang.Object a,
java.lang.Object b)
For now, we can only add two objects as strings; convert objects to Strings then cat. |
java.lang.Object |
applyListOfAlternatingTemplates(StringTemplate self,
java.lang.Object attributeValue,
java.util.List templatesToApply)
|
java.lang.Object |
applyTemplateToListOfAttributes(StringTemplate self,
java.util.List attributes,
StringTemplate templateToApply)
For |
protected static java.lang.Object |
convertAnythingIteratableToIterator(java.lang.Object o)
|
protected static java.util.Iterator |
convertAnythingToIterator(java.lang.Object o)
|
static java.lang.Object |
convertArrayToList(java.lang.Object value)
Do a standard conversion of array attributes to a List. |
protected void |
evaluateArguments(StringTemplate self)
Evaluate an argument list within the context of the enclosing template but store the values in the context of self, the new embedded template. |
protected java.lang.String |
evaluateExpression(StringTemplate self,
java.lang.Object expr)
A expr is normally just a string literal, but is still an AST that we must evaluate. |
java.lang.Object |
first(java.lang.Object attribute)
Return the first attribute if multiple valued or the attribute itself if single-valued. |
antlr.collections.AST |
getAST()
Return the tree interpreted when this template is written out. |
protected java.lang.reflect.Method |
getMethod(java.lang.Class c,
java.lang.String methodName)
|
java.lang.Object |
getObjectProperty(StringTemplate self,
java.lang.Object o,
java.lang.Object propertyName)
Return o.getPropertyName() given o and propertyName. |
java.lang.Object |
getOption(java.lang.String name)
|
StringTemplate |
getTemplateInclude(StringTemplate enclosing,
java.lang.String templateName,
StringTemplateAST argumentsAST)
Call a string template with args and return result. |
protected void |
handleExprOptions(StringTemplate self)
Grab and cache options; verify options are valid |
protected java.lang.Object |
invokeMethod(java.lang.reflect.Method m,
java.lang.Object o,
java.lang.Object value)
|
java.lang.Object |
last(java.lang.Object attribute)
Return the last attribute if multiple valued or the attribute itself if single-valued. |
java.lang.Object |
length(java.lang.Object attribute)
Return the length of a multiple valued attribute or 1 if it is a single attribute. |
protected java.lang.Object |
rawGetObjectProperty(StringTemplate self,
java.lang.Object o,
java.lang.Object property)
|
java.lang.Object |
rest(java.lang.Object attribute)
Return the everything but the first attribute if multiple valued or null if single-valued. |
protected void |
setSoleFormalArgumentToIthValue(StringTemplate embedded,
java.util.Map argumentContext,
java.lang.Object ithValue)
|
java.lang.Object |
strip(java.lang.Object attribute)
Return a new list w/o null values. |
boolean |
testAttributeTrue(java.lang.Object a)
Normally StringTemplate tests presence or absence of attributes for adherence to my principles of separation, but some people disagree and want to change. |
java.lang.String |
toString()
|
java.lang.Object |
trunc(java.lang.Object attribute)
Return all but the last element. |
protected int |
write(StringTemplate self,
java.lang.Object o,
StringTemplateWriter out)
|
int |
write(StringTemplate self,
StringTemplateWriter out)
To write out the value of an ASTExpr, invoke the evaluator in eval.g to walk the tree writing out the values. |
int |
writeAttribute(StringTemplate self,
java.lang.Object o,
StringTemplateWriter out)
How to spit out an object. |
| Methods inherited from class org.antlr.stringtemplate.language.Expr |
getEnclosingTemplate, getIndentation, setIndentation |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final java.lang.String DEFAULT_ATTRIBUTE_NAME
public static final java.lang.String DEFAULT_ATTRIBUTE_NAME_DEPRECATED
public static final java.lang.String DEFAULT_INDEX_VARIABLE_NAME
public static final java.lang.String DEFAULT_INDEX0_VARIABLE_NAME
public static final java.lang.String DEFAULT_MAP_VALUE_NAME
public static final java.lang.String DEFAULT_MAP_KEY_NAME
public static final StringTemplate MAP_KEY_VALUE
public static final java.lang.String EMPTY_OPTION
public static final java.util.Map defaultOptionValues
public static final java.util.Set supportedOptions
antlr.collections.AST exprTree
java.util.Map options
java.lang.String wrapString
java.lang.String nullValue
java.lang.String separatorString
java.lang.String formatString
| Constructor Detail |
public ASTExpr(StringTemplate enclosingTemplate, antlr.collections.AST exprTree, java.util.Map options)
| Method Detail |
public antlr.collections.AST getAST()
public int write(StringTemplate self, StringTemplateWriter out) throws java.io.IOException
java.io.IOExceptionprotected void handleExprOptions(StringTemplate self)
public java.lang.Object applyTemplateToListOfAttributes(StringTemplate self, java.util.List attributes, StringTemplate templateToApply)
public java.lang.Object applyListOfAlternatingTemplates(StringTemplate self, java.lang.Object attributeValue, java.util.List templatesToApply)
protected void setSoleFormalArgumentToIthValue(StringTemplate embedded, java.util.Map argumentContext, java.lang.Object ithValue)
public java.lang.Object getObjectProperty(StringTemplate self, java.lang.Object o, java.lang.Object propertyName)
protected java.lang.Object rawGetObjectProperty(StringTemplate self, java.lang.Object o, java.lang.Object property)
protected java.lang.Object accessField(java.lang.reflect.Field f,
java.lang.Object o,
java.lang.Object value)
throws java.lang.IllegalAccessException
java.lang.IllegalAccessException
protected java.lang.Object invokeMethod(java.lang.reflect.Method m,
java.lang.Object o,
java.lang.Object value)
throws java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
protected java.lang.reflect.Method getMethod(java.lang.Class c,
java.lang.String methodName)
public boolean testAttributeTrue(java.lang.Object a)
public java.lang.Object add(java.lang.Object a,
java.lang.Object b)
public StringTemplate getTemplateInclude(StringTemplate enclosing, java.lang.String templateName, StringTemplateAST argumentsAST)
public int writeAttribute(StringTemplate self, java.lang.Object o, StringTemplateWriter out)
protected int write(StringTemplate self, java.lang.Object o, StringTemplateWriter out)
protected java.lang.String evaluateExpression(StringTemplate self, java.lang.Object expr)
protected void evaluateArguments(StringTemplate self)
public static java.lang.Object convertArrayToList(java.lang.Object value)
protected static java.lang.Object convertAnythingIteratableToIterator(java.lang.Object o)
protected static java.util.Iterator convertAnythingToIterator(java.lang.Object o)
public java.lang.Object first(java.lang.Object attribute)
public java.lang.Object rest(java.lang.Object attribute)
public java.lang.Object last(java.lang.Object attribute)
public java.lang.Object strip(java.lang.Object attribute)
public java.lang.Object trunc(java.lang.Object attribute)
public java.lang.Object length(java.lang.Object attribute)
public java.lang.Object getOption(java.lang.String name)
public java.lang.String toString()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||