org.hibernate.hql.ast.tree
Class BinaryArithmeticOperatorNode

java.lang.Object
  extended by antlr.BaseAST
      extended by antlr.CommonAST
          extended by org.hibernate.hql.ast.tree.Node
              extended by org.hibernate.hql.ast.tree.SqlNode
                  extended by org.hibernate.hql.ast.tree.HqlSqlWalkerNode
                      extended by org.hibernate.hql.ast.tree.AbstractSelectExpression
                          extended by org.hibernate.hql.ast.tree.BinaryArithmeticOperatorNode
All Implemented Interfaces:
antlr.collections.AST, Serializable, BinaryOperatorNode, DisplayableNode, InitializeableNode, OperatorNode, SelectExpression

public class BinaryArithmeticOperatorNode
extends AbstractSelectExpression
implements BinaryOperatorNode, DisplayableNode

Nodes which represent binary arithmetic operators.

Author:
Gavin King
See Also:
Serialized Form

Field Summary
 
Fields inherited from class antlr.BaseAST
down, right
 
Constructor Summary
BinaryArithmeticOperatorNode()
           
 
Method Summary
 Type getDataType()
          Figure out the type of the binary expression by looking at the types of the operands.
 String getDisplayText()
          Returns additional display text for the AST node.
 Node getLeftHandOperand()
          Retrieves the left-hand operand of the operator.
 Node getRightHandOperand()
          Retrieves the right-hand operand of the operator.
 void initialize()
          Called by the tree walker during hql-sql semantic analysis after the operator sub-tree is completely built.
 void setScalarColumnText(int i)
          Appends AST nodes that represent the columns after the current AST node.
 
Methods inherited from class org.hibernate.hql.ast.tree.AbstractSelectExpression
getAlias, getFromElement, isConstructor, isReturnableEntity, isScalar, setAlias
 
Methods inherited from class org.hibernate.hql.ast.tree.HqlSqlWalkerNode
getAliasGenerator, getASTFactory, getSessionFactoryHelper, getWalker, initialize
 
Methods inherited from class org.hibernate.hql.ast.tree.SqlNode
getOriginalText, setDataType, setText
 
Methods inherited from class org.hibernate.hql.ast.tree.Node
getColumn, getFilename, getLine, getRenderText, getTextLength, initialize, initialize
 
Methods inherited from class antlr.CommonAST
getText, getType, initialize, setType
 
Methods inherited from class antlr.BaseAST
addChild, decode, encode, equals, equalsList, equalsListPartial, equalsTree, equalsTreePartial, findAll, findAllPartial, getFirstChild, getNextSibling, getNumberOfChildren, getTokenNames, removeChildren, setFirstChild, setNextSibling, setVerboseStringConversion, toString, toStringList, toStringTree, xmlSerialize, xmlSerializeNode, xmlSerializeRootClose, xmlSerializeRootOpen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.hibernate.hql.ast.tree.SelectExpression
setText
 

Constructor Detail

BinaryArithmeticOperatorNode

public BinaryArithmeticOperatorNode()
Method Detail

initialize

public void initialize()
                throws antlr.SemanticException
Description copied from interface: OperatorNode
Called by the tree walker during hql-sql semantic analysis after the operator sub-tree is completely built.

Specified by:
initialize in interface OperatorNode
Throws:
antlr.SemanticException

getDataType

public Type getDataType()
Figure out the type of the binary expression by looking at the types of the operands. Sometimes we don't know both types, if, for example, one is a parameter.

Specified by:
getDataType in interface OperatorNode
Specified by:
getDataType in interface SelectExpression
Overrides:
getDataType in class SqlNode
Returns:
The expression's data type.

setScalarColumnText

public void setScalarColumnText(int i)
                         throws antlr.SemanticException
Description copied from interface: SelectExpression
Appends AST nodes that represent the columns after the current AST node. (e.g. 'as col0_O_')

Specified by:
setScalarColumnText in interface SelectExpression
Parameters:
i - The index of the select expression in the projection list.
Throws:
antlr.SemanticException

getLeftHandOperand

public Node getLeftHandOperand()
Retrieves the left-hand operand of the operator.

Specified by:
getLeftHandOperand in interface BinaryOperatorNode
Returns:
The left-hand operand

getRightHandOperand

public Node getRightHandOperand()
Retrieves the right-hand operand of the operator.

Specified by:
getRightHandOperand in interface BinaryOperatorNode
Returns:
The right-hand operand

getDisplayText

public String getDisplayText()
Description copied from interface: DisplayableNode
Returns additional display text for the AST node.

Specified by:
getDisplayText in interface DisplayableNode
Returns:
String - The additional display text.