Class ASTSetDirective
java.lang.Object
org.apache.velocity.runtime.parser.node.SimpleNode
org.apache.velocity.runtime.parser.node.ASTSetDirective
- All Implemented Interfaces:
Cloneable
,Node
,Renderable
Node for the #set directive
- Version:
- $Id$
- Author:
- Jason van Zyl, Geir Magnusson Jr.
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
Indicates if we are running in strict reference mode.protected Info
This is really immutable after the init, so keep one for this node -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionget indentation postfixget indentation prefixinit
(InternalContextAdapter context, Object data) simple init.jjtAccept
(StandardParserVisitor visitor, Object data) literal()
Returns the string "#set($reference = ...)".boolean
render
(InternalContextAdapter context, Writer writer) puts the value of the RHS into the context under the key of the LHSvoid
setPostfix
(String postfix) set indentation postfixvoid
set indentation prefixMethods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode
childrenAccept, cleanupParserAndTokens, clone, clone, dump, dump, dump, evaluate, execute, getColumn, getFirstToken, getFirstTokenImage, getInfo, getLastToken, getLastTokenImage, getLine, getLocation, getParser, getRuntimeServices, getTemplate, getTemplateName, getType, isInvalid, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, saveTokenImages, setFirstToken, setInfo, setInvalid, toString, toString, value
-
Field Details
-
uberInfo
This is really immutable after the init, so keep one for this node -
strictRef
protected boolean strictRefIndicates if we are running in strict reference mode.
-
-
Constructor Details
-
ASTSetDirective
public ASTSetDirective(int id) - Parameters:
id
-
-
ASTSetDirective
- Parameters:
p
-id
-
-
-
Method Details
-
jjtAccept
- Specified by:
jjtAccept
in interfaceNode
- Overrides:
jjtAccept
in classSimpleNode
- Parameters:
visitor
-data
-- Returns:
- The Node execution result object.
- See Also:
-
init
simple init. We can get the RHS and LHS as the the tree structure is static- Specified by:
init
in interfaceNode
- Overrides:
init
in classSimpleNode
- Parameters:
context
-data
-- Returns:
- Init result.
- Throws:
TemplateInitException
- See Also:
-
setPrefix
set indentation prefix- Parameters:
prefix
-
-
getPrefix
get indentation prefix- Returns:
- indentation prefix
-
setPostfix
set indentation postfix- Parameters:
postfix
-
-
getPostfix
get indentation postfix- Returns:
- indentation prefix
-
render
public boolean render(InternalContextAdapter context, Writer writer) throws IOException, MethodInvocationException puts the value of the RHS into the context under the key of the LHS- Specified by:
render
in interfaceNode
- Specified by:
render
in interfaceRenderable
- Overrides:
render
in classSimpleNode
- Parameters:
context
-writer
-- Returns:
- True if rendering was sucessful.
- Throws:
IOException
MethodInvocationException
- See Also:
-
literal
Returns the string "#set($reference = ...)". RHS is not rendered. This method is only used for displaying the VTL stacktrace when a rendering error is encountered when runtime.log.track_location is true.- Specified by:
literal
in interfaceNode
- Overrides:
literal
in classSimpleNode
- Returns:
- See Also:
-