org.apache.velocity.runtime.parser.node

Class ASTEQNode

Implemented Interfaces:
Node

public class ASTEQNode
extends SimpleNode

Handles the equivalence operator == This operator requires that the LHS and RHS are both of the same Class.

Version:
$Id: ASTEQNode.java,v 1.9.4.1 2004/03/03 23:22:58 geirm Exp $

Field Summary

Fields inherited from class org.apache.velocity.runtime.parser.node.SimpleNode

children, first, id, info, invalid, last, parent, parser, rsvc, state

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)
Accept the visitor.
Object
value(InternalContextAdapter context)

Methods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode

childrenAccept, dump, evaluate, execute, getColumn, getFirstToken, getInfo, getLastToken, getLine, getType, init, isInvalid, jjtAccept, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, literal, render, setFirstToken, setInfo, setInvalid, toString, value

Constructor Details

ASTEQNode

public ASTEQNode(int id)


ASTEQNode

public ASTEQNode(Parser p,
                 int id)

Method Details

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 interface 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


jjtAccept

public Object jjtAccept(ParserVisitor visitor,
                        Object data)
Accept the visitor. *
Specified by:
jjtAccept in interface Node
Overrides:
jjtAccept in interface SimpleNode


value

public Object value(InternalContextAdapter context)
            throws MethodInvocationException
Specified by:
value in interface Node
Overrides:
value in interface SimpleNode


Copyright B) 2002 Apache Software Foundation. All Rights Reserved.