ASTIdentifier (Velocity 1.7 API)
Keywords: org.apache.velocity.runtime.parser.node.ASTIdentifier class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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`

Constructor Summary
`ASTIdentifier(int id)`
`ASTIdentifier(Parser p, int id)`

Method Summary
`Object` | `execute(Object o, InternalContextAdapter context)`
`Object` | `init(InternalContextAdapter context, Object data)` simple init - don't do anything that is context specific.
`Object` | `jjtAccept(ParserVisitor visitor, Object data)`

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`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### 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.

Constructor Detail

### ASTIdentifier

    public ASTIdentifier(int id)

Parameters:
  `id` -

### ASTIdentifier

    public ASTIdentifier(Parser p,
                         int id)

Parameters:
  `p` -
  `id` -

Method Detail

### jjtAccept

    public Object jjtAccept(ParserVisitor visitor,
                            Object data)

  Specified by:
    `jjtAccept` in interface `Node`
  Overrides:
    `jjtAccept` in class `SimpleNode`
  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`
  Throws:
    `MethodInvocationException`
  See Also:
    `SimpleNode.execute(java.lang.Object, org.apache.velocity.context.InternalContextAdapter)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2010 Apache Software Foundation. All Rights Reserved.