org.hibernate.hql.ast
Class IndexNode

java.lang.Object
  extended byantlr.BaseAST
      extended byantlr.CommonAST
          extended byorg.hibernate.hql.ast.SqlNode
              extended byorg.hibernate.hql.ast.HqlSqlWalkerNode
                  extended byorg.hibernate.hql.ast.AbstractSelectExpression
                      extended byorg.hibernate.hql.ast.FromReferenceNode
                          extended byorg.hibernate.hql.ast.IndexNode
All Implemented Interfaces:
antlr.collections.AST, DisplayableNode, org.hibernate.hql.ast.InitializeableNode, PathNode, ResolvableNode, SelectExpression, Serializable

public class IndexNode
extends org.hibernate.hql.ast.FromReferenceNode

Represents the [] operator and provides it's semantics.

Author:
josh Aug 14, 2004 7:07:10 AM
See Also:
Serialized Form

Field Summary
static int ROOT_LEVEL
           
 
Fields inherited from class antlr.BaseAST
down, right
 
Constructor Summary
IndexNode()
           
 
Method Summary
 String getAlias()
           
 org.hibernate.hql.ast.AliasGenerator getAliasGenerator()
           
 antlr.ASTFactory getASTFactory()
           
 Type getDataType()
          Returns the data type of the select expression.
 String getDisplayText()
          Returns additional display text for the AST node.
 FromElement getFromElement()
          Returns the FROM element that this expression refers to.
 String getPath()
          Returns the full path name represented by the node.
 org.hibernate.hql.ast.SessionFactoryHelper getSessionFactoryHelper()
           
 HqlSqlWalker getWalker()
           
 void initialize(Object param)
          Initializes the node with the parameter.
 boolean isConstructor()
          Returns true if the element is a constructor (e.g.
 boolean isReturnableEntity()
          Returns true if this select expression represents an entity that can be returned.
 boolean isScalar()
           
 void prepareForDot(String propertyName)
           
 void recursiveResolve(int level, boolean impliedAtRoot, String classAlias)
           
 void resolve(boolean generateJoin, boolean implicitJoin)
          Does the work of resolving an identifier or a dot, but without a parent node or alias
 void resolve(boolean generateJoin, boolean implicitJoin, String classAlias)
          Does the work of resolving an identifier or a dot, but without a parent node
 void resolve(boolean generateJoin, boolean implicitJoin, String classAlias, antlr.collections.AST parent)
          Does the work of resolving an identifier or a dot
 void resolveIndex(antlr.collections.AST parent)
          Does the work of resolving an an index [].
 void resolveInFunctionCall(boolean generateJoin, boolean implicitJoin)
          Does the work of resolving inside of the scope of a function call
 void setAlias(String alias)
           
 void setFromElement(FromElement fromElement)
           
 void setScalarColumnText(int i)
          Appends AST nodes that represent the columns after the current AST node.
 void setText(String s)
          Sets the text of the node.
 
Methods inherited from class antlr.CommonAST
getText, getType, initialize, initialize, initialize, setType
 
Methods inherited from class antlr.BaseAST
addChild, decode, encode, equals, equalsList, equalsListPartial, equalsTree, equalsTreePartial, findAll, findAllPartial, getColumn, getFirstChild, getLine, 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.SelectExpression
getDataType, setText
 

Field Detail

ROOT_LEVEL

public static final int ROOT_LEVEL
See Also:
Constant Field Values
Constructor Detail

IndexNode

public IndexNode()
Method Detail

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_')

Parameters:
i - The index of the select expression in the projection list.
Throws:
antlr.SemanticException

prepareForDot

public void prepareForDot(String propertyName)
                   throws antlr.SemanticException
Throws:
antlr.SemanticException

resolveIndex

public void resolveIndex(antlr.collections.AST parent)
                  throws antlr.SemanticException
Description copied from interface: ResolvableNode
Does the work of resolving an an index [].

Throws:
antlr.SemanticException

resolve

public void resolve(boolean generateJoin,
                    boolean implicitJoin,
                    String classAlias,
                    antlr.collections.AST parent)
             throws antlr.SemanticException
Description copied from interface: ResolvableNode
Does the work of resolving an identifier or a dot

Throws:
antlr.SemanticException

getFromElement

public FromElement getFromElement()
Description copied from interface: SelectExpression
Returns the FROM element that this expression refers to.

Specified by:
getFromElement in interface SelectExpression

setFromElement

public void setFromElement(FromElement fromElement)

getPath

public String getPath()
Description copied from interface: PathNode
Returns the full path name represented by the node.

Specified by:
getPath in interface PathNode
Returns:
the full path name represented by the node.

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.

recursiveResolve

public void recursiveResolve(int level,
                             boolean impliedAtRoot,
                             String classAlias)
                      throws antlr.SemanticException
Throws:
antlr.SemanticException

isReturnableEntity

public boolean isReturnableEntity()
                           throws antlr.SemanticException
Description copied from interface: SelectExpression
Returns true if this select expression represents an entity that can be returned.

Specified by:
isReturnableEntity in interface SelectExpression
Throws:
antlr.SemanticException

resolveInFunctionCall

public void resolveInFunctionCall(boolean generateJoin,
                                  boolean implicitJoin)
                           throws antlr.SemanticException
Description copied from interface: ResolvableNode
Does the work of resolving inside of the scope of a function call

Specified by:
resolveInFunctionCall in interface ResolvableNode
Throws:
antlr.SemanticException

resolve

public void resolve(boolean generateJoin,
                    boolean implicitJoin)
             throws antlr.SemanticException
Description copied from interface: ResolvableNode
Does the work of resolving an identifier or a dot, but without a parent node or alias

Specified by:
resolve in interface ResolvableNode
Throws:
antlr.SemanticException

resolve

public void resolve(boolean generateJoin,
                    boolean implicitJoin,
                    String classAlias)
             throws antlr.SemanticException
Description copied from interface: ResolvableNode
Does the work of resolving an identifier or a dot, but without a parent node

Specified by:
resolve in interface ResolvableNode
Throws:
antlr.SemanticException

initialize

public void initialize(Object param)
Initializes the node with the parameter.

Parameters:
param - the initialization parameter.

setAlias

public final void setAlias(String alias)
Specified by:
setAlias in interface SelectExpression

getAlias

public final String getAlias()
Specified by:
getAlias in interface SelectExpression

isConstructor

public boolean isConstructor()
Description copied from interface: SelectExpression
Returns true if the element is a constructor (e.g. new Foo).

Specified by:
isConstructor in interface SelectExpression
Returns:
true if the element is a constructor (e.g. new Foo).

isScalar

public boolean isScalar()
                 throws antlr.SemanticException
Specified by:
isScalar in interface SelectExpression
Throws:
antlr.SemanticException

getWalker

public HqlSqlWalker getWalker()

getSessionFactoryHelper

public org.hibernate.hql.ast.SessionFactoryHelper getSessionFactoryHelper()

getASTFactory

public antlr.ASTFactory getASTFactory()

getAliasGenerator

public org.hibernate.hql.ast.AliasGenerator getAliasGenerator()

setText

public void setText(String s)

getDataType

public Type getDataType()