org.apache.velocity.runtime.parser.node
Class ASTIdentifier
java.lang.Object
org.apache.velocity.runtime.parser.node.SimpleNode
org.apache.velocity.runtime.parser.node.ASTIdentifier
- All Implemented Interfaces:
- Node, Renderable
public class ASTIdentifier
- extends SimpleNode
ASTIdentifier.java
Method support for identifiers : $foo
mainly used by ASTRefrence
Introspection is now moved to 'just in time' or at render / execution
time. There are many reasons why this has to be done, but the
primary two are thread safety, to remove any context-derived
information from class member variables.
- Version:
- $Id: ASTIdentifier.java 732250 2009-01-07 07:37:10Z byron $
- Author:
- Jason van Zyl, Geir Magnusson Jr.
Field Summary |
protected boolean |
strictRef
Indicates if we are running in strict reference mode. |
protected Info |
uberInfo
This is really immutable after the init, so keep one for this node |
Fields inherited from class org.apache.velocity.runtime.parser.node.SimpleNode |
children, first, id, info, invalid, last, log, parent, parser, rsvc, state, templateName |
Methods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode |
childrenAccept, dump, evaluate, getColumn, getFirstToken, getInfo, getLastToken, getLine, getLocation, getRuntimeServices, getTemplateName, getType, isInvalid, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, literal, render, setFirstToken, setInfo, setInvalid, toString, toString, value |
uberInfo
protected Info uberInfo
- This is really immutable after the init, so keep one for this node
strictRef
protected boolean strictRef
- Indicates if we are running in strict reference mode.
ASTIdentifier
public ASTIdentifier(int id)
- Parameters:
id
-
ASTIdentifier
public ASTIdentifier(Parser p,
int id)
- Parameters:
p
- id
-
jjtAccept
public Object jjtAccept(ParserVisitor visitor,
Object data)
- Specified by:
jjtAccept
in interface Node
- Overrides:
jjtAccept
in class SimpleNode
- Returns:
- The Node execution result object.
- See Also:
SimpleNode.jjtAccept(org.apache.velocity.runtime.parser.node.ParserVisitor, java.lang.Object)
init
public Object init(InternalContextAdapter context,
Object data)
throws TemplateInitException
- simple init - don't do anything that is context specific.
just get what we need from the AST, which is static.
- Specified by:
init
in interface Node
- Overrides:
init
in class SimpleNode
- Parameters:
context
- data
-
- Returns:
- The data object.
- Throws:
TemplateInitException
- See Also:
Node.init(org.apache.velocity.context.InternalContextAdapter, java.lang.Object)
execute
public Object execute(Object o,
InternalContextAdapter context)
throws MethodInvocationException
- Specified by:
execute
in interface Node
- Overrides:
execute
in class SimpleNode
- Returns:
- The execution result.
- Throws:
MethodInvocationException
- See Also:
SimpleNode.execute(java.lang.Object, org.apache.velocity.context.InternalContextAdapter)
Copyright © 2000-2010 The Apache Software Foundation. All Rights Reserved.