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$
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
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.boolean
evaluate
(InternalContextAdapter context) init
(InternalContextAdapter context, Object data) init : we don't have to do much.boolean
Check to see if this is an interpolated string.jjtAccept
(ParserVisitor visitor, Object data) private String
replaceQuotes
(String s, char literalQuoteChar) Replaces double double-quotes with a single double quote ("" to ").static String
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.Methods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode
childrenAccept, cleanupParserAndTokens, dump, dump, dump, execute, getColumn, getFirstToken, getFirstTokenImage, getInfo, getLastToken, getLastTokenImage, getLine, getLocation, getParser, getRuntimeServices, getTemplate, getTemplateName, getType, isInvalid, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, literal, render, saveTokenImages, setFirstToken, setInfo, setInvalid, toString, toString
-
Field Details
-
interpolate
private boolean interpolate -
nodeTree
-
image
-
-
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:
init
in interfaceNode
- Overrides:
init
in 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 necessary 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.- Parameters:
node
-
-
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
- Parameters:
string
-- Returns:
- unescaped string
- Since:
- 1.6
-
jjtAccept
- Specified by:
jjtAccept
in interfaceNode
- Overrides:
jjtAccept
in classSimpleNode
- Parameters:
visitor
-data
-- Returns:
- rendered 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:
value
in interfaceNode
- Overrides:
value
in classSimpleNode
- Parameters:
context
-- Returns:
- result of the rendering.
- See Also:
-
evaluate
- Specified by:
evaluate
in interfaceNode
- Overrides:
evaluate
in classSimpleNode
- Parameters:
context
-- Returns:
- The evaluation result.
- See Also:
-