org.apache.velocity.runtime.parser.node
Class ASTEQNode

java.lang.Object
  extended by org.apache.velocity.runtime.parser.node.SimpleNode
      extended by org.apache.velocity.runtime.parser.node.ASTEQNode
All Implemented Interfaces:
Node, Renderable

public class ASTEQNode
extends SimpleNode

Handles arg1 == arg2 This operator requires that the LHS and RHS are both of the same Class OR both are subclasses of java.lang.Number

Version:
$Id: ASTEQNode.java 691048 2008-09-01 20:26:11Z nbubna $
Author:
Will Glass-Husain, Peter Romianowski

Field Summary
 
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
ASTEQNode(int id)
           
ASTEQNode(Parser p, int id)
           
 
Method Summary
 boolean evaluate(InternalContextAdapter context)
          Calculates the value of the logical expression arg1 == arg2 All class types are supported.
 Object jjtAccept(ParserVisitor visitor, Object data)
           
 Object value(InternalContextAdapter context)
           
 
Methods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode
childrenAccept, dump, execute, getColumn, getFirstToken, getInfo, getLastToken, getLine, getLocation, getRuntimeServices, getTemplateName, getType, init, isInvalid, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, literal, render, setFirstToken, setInfo, setInvalid, toString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ASTEQNode

public ASTEQNode(int id)
Parameters:
id -

ASTEQNode

public ASTEQNode(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
Returns:
The Node execution result object.
See Also:
SimpleNode.jjtAccept(org.apache.velocity.runtime.parser.node.ParserVisitor, java.lang.Object)

evaluate

public boolean evaluate(InternalContextAdapter context)
                 throws MethodInvocationException
Calculates the value of the logical expression arg1 == arg2 All class types are supported. Uses equals() to determine equivalence. This should work as we represent with the types we already support, and anything else that implements equals() to mean more than identical references.

Specified by:
evaluate in interface Node
Overrides:
evaluate in class SimpleNode
Parameters:
context - internal context used to evaluate the LHS and RHS
Returns:
true if equivalent, false if not equivalent, false if not compatible arguments, or false if either LHS or RHS is null
Throws:
MethodInvocationException
See Also:
Node.evaluate(org.apache.velocity.context.InternalContextAdapter)

value

public Object value(InternalContextAdapter context)
             throws MethodInvocationException
Specified by:
value in interface Node
Overrides:
value in class SimpleNode
Returns:
The node value.
Throws:
MethodInvocationException
See Also:
SimpleNode.value(org.apache.velocity.context.InternalContextAdapter)


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