Class ASTStringLiteral
- java.lang.Object
-
- org.apache.velocity.runtime.parser.node.SimpleNode
-
- org.apache.velocity.runtime.parser.node.ASTStringLiteral
-
- All Implemented Interfaces:
Node,Renderable
public class ASTStringLiteral extends SimpleNode
ASTStringLiteral support. Will interpolate!- Version:
- $Id: ASTStringLiteral.java 1032134 2010-11-06 20:19:39Z cbrisson $
-
-
Field Summary
Fields Modifier and Type Field Description private booleancontainsLineCommenttrue if the string contains a line comment (##)private java.lang.Stringimageprivate booleaninterpolateprivate java.lang.Stringinterpolateimageprivate SimpleNodenodeTree
-
Constructor Summary
Constructors Constructor Description ASTStringLiteral(int id)ASTStringLiteral(Parser p, int id)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadjTokenLineNums(Node node)Adjust all the line and column numbers that comprise a node so that they are corrected for the string literals position within the template file.java.lang.Objectinit(InternalContextAdapter context, java.lang.Object data)init : we don't have to do much.booleanisConstant()Check to see if this is an interpolated string.java.lang.ObjectjjtAccept(ParserVisitor visitor, java.lang.Object data)private java.lang.StringreplaceQuotes(java.lang.String s, char literalQuoteChar)Replaces double double-quotes with a single double quote ("" to ").static java.lang.Stringunescape(java.lang.String string)java.lang.Objectvalue(InternalContextAdapter context)renders the value of the string literal If the properties allow, and the string literal contains a $ or a # the literal is rendered against the context Otherwise, the stringlit is returned.-
Methods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode
childrenAccept, dump, evaluate, execute, getColumn, getFirstToken, getInfo, getLastToken, getLine, getLocation, getRuntimeServices, getTemplateName, getType, isInvalid, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, literal, render, setFirstToken, setInfo, setInvalid, toString, toString
-
-
-
-
Field Detail
-
interpolate
private boolean interpolate
-
nodeTree
private SimpleNode nodeTree
-
image
private java.lang.String image
-
interpolateimage
private java.lang.String interpolateimage
-
containsLineComment
private boolean containsLineComment
true if the string contains a line comment (##)
-
-
Constructor Detail
-
ASTStringLiteral
public ASTStringLiteral(int id)
- Parameters:
id-
-
ASTStringLiteral
public ASTStringLiteral(Parser p, int id)
- Parameters:
p-id-
-
-
Method Detail
-
init
public java.lang.Object init(InternalContextAdapter context, java.lang.Object data) throws TemplateInitException
init : we don't have to do much. Init the tree (there shouldn't be one) and then see if interpolation is turned on.- Specified by:
initin interfaceNode- Overrides:
initin classSimpleNode- Parameters:
context-data-- Returns:
- Init result.
- Throws:
TemplateInitException- See Also:
Node.init(org.apache.velocity.context.InternalContextAdapter, java.lang.Object)
-
adjTokenLineNums
public void adjTokenLineNums(Node node)
Adjust all the line and column numbers that comprise a node so that they are corrected for the string literals position within the template file. This is neccessary if an exception is thrown while processing the node so that the line and column position reported reflects the error position within the template and not just relative to the error position within the string literal.
-
replaceQuotes
private java.lang.String replaceQuotes(java.lang.String s, char literalQuoteChar)Replaces double double-quotes with a single double quote ("" to "). Replaces double single quotes with a single quote ('' to ').- Parameters:
s- StringLiteral without the surrounding quotesliteralQuoteChar- char that starts the StringLiteral (" or ')
-
unescape
public static java.lang.String unescape(java.lang.String string)
- Since:
- 1.6
-
jjtAccept
public java.lang.Object jjtAccept(ParserVisitor visitor, java.lang.Object data)
- Specified by:
jjtAcceptin interfaceNode- Overrides:
jjtAcceptin classSimpleNode- Returns:
- The Node execution result object.
- See Also:
SimpleNode.jjtAccept(org.apache.velocity.runtime.parser.node.ParserVisitor, java.lang.Object)
-
isConstant
public boolean isConstant()
Check to see if this is an interpolated string.- Returns:
- true if this is constant (not an interpolated string)
- Since:
- 1.6
-
value
public java.lang.Object value(InternalContextAdapter context)
renders the value of the string literal If the properties allow, and the string literal contains a $ or a # the literal is rendered against the context Otherwise, the stringlit is returned.- Specified by:
valuein interfaceNode- Overrides:
valuein classSimpleNode- Parameters:
context-- Returns:
- result of the rendering.
- See Also:
Node.value(org.apache.velocity.context.InternalContextAdapter)
-
-