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
FieldsModifier and TypeFieldDescriptionprotected booleanIndicates if we are running in strict reference mode.protected InfoThis is really immutable after the init, so keep one for this node -
Constructor Summary
Constructors -
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 = ...)".booleanrender(InternalContextAdapter context, Writer writer) puts the value of the RHS into the context under the key of the LHSvoidsetPostfix(String postfix) set indentation postfixvoidset 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:
jjtAcceptin interfaceNode- Overrides:
jjtAcceptin 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:
initin interfaceNode- Overrides:
initin 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:
renderin interfaceNode- Specified by:
renderin interfaceRenderable- Overrides:
renderin classSimpleNode- Parameters:
context-writer-- Returns:
- True if rendering was sucessful.
- Throws:
IOExceptionMethodInvocationException- 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:
literalin interfaceNode- Overrides:
literalin classSimpleNode- Returns:
- See Also:
-