Class ASTStringLiteral
java.lang.Object
org.apache.velocity.runtime.parser.node.SimpleNode
org.apache.velocity.runtime.parser.node.ASTStringLiteral
- All Implemented Interfaces:
Node,Renderable
ASTStringLiteral support. Will interpolate!
- Version:
- $Id: ASTStringLiteral.java 1032134 2010-11-06 20:19:39Z cbrisson $
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleantrue if the string contains a line comment (##)private Stringprivate booleanprivate Stringprivate SimpleNode -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidadjTokenLineNums(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.init(InternalContextAdapter context, Object data) init : we don't have to do much.booleanCheck to see if this is an interpolated string.jjtAccept(ParserVisitor visitor, Object data) private StringreplaceQuotes(String s, char literalQuoteChar) Replaces double double-quotes with a single double quote ("" to ").static Stringvalue(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 Details
-
interpolate
private boolean interpolate -
nodeTree
-
image
-
interpolateimage
-
containsLineComment
private boolean containsLineCommenttrue if the string contains a line comment (##)
-
-
Constructor Details
-
ASTStringLiteral
public ASTStringLiteral(int id) - Parameters:
id-
-
ASTStringLiteral
- Parameters:
p-id-
-
-
Method Details
-
init
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:
-
adjTokenLineNums
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
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
- Since:
- 1.6
-
jjtAccept
- Specified by:
jjtAcceptin interfaceNode- Overrides:
jjtAcceptin classSimpleNode- Returns:
- The Node execution result object.
- See Also:
-
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
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:
-