Package org.hibernate.hql.ast.tree
Class DotNode
- All Implemented Interfaces:
antlr.collections.AST,Serializable,DisplayableNode,InitializeableNode,PathNode,ResolvableNode,SelectExpression
Represents a reference to a property or alias expression. This should duplicate the relevant behaviors in
PathExpressionParser.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final DotNode.IllegalCollectionDereferenceExceptionBuilderstatic booleanstatic booleanFields inherited from class org.hibernate.hql.ast.tree.FromReferenceNode
ROOT_LEVELFields inherited from class antlr.BaseAST
down, right -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the data type of the select expression.Returns additional display text for the AST node.Sub-classes can override this method if they produce implied joins (e.g.getLhs()getPath()Returns the full path of the node.voidresolve(boolean generateJoin, boolean implicitJoin, String classAlias, antlr.collections.AST parent) Does the work of resolving an identifier or a dotvoidResolves the left hand side of the DOT.voidresolveIndex(antlr.collections.AST parent) Does the work of resolving an an index [].voidresolveInFunctionCall(boolean generateJoin, boolean implicitJoin) Does the work of resolving inside of the scope of a function callvoidSpecial method to resolve expressions in the SELECT list.voidsetFetch(boolean fetch) voidsetJoinType(int joinType) Sets the join type for this '.' node structure.voidsetPropertyPath(String propertyPath) voidsetResolvedConstant(String text) voidsetScalarColumnText(int i) Appends AST nodes that represent the columns after the current AST node.Methods inherited from class org.hibernate.hql.ast.tree.FromReferenceNode
getFromElement, isResolved, isReturnableEntity, prepareForDot, recursiveResolve, recursiveResolve, resolve, resolve, setFromElement, setResolvedMethods inherited from class org.hibernate.hql.ast.tree.AbstractSelectExpression
getAlias, getScalarColumnIndex, isConstructor, isScalar, setAlias, setScalarColumnMethods inherited from class org.hibernate.hql.ast.tree.HqlSqlWalkerNode
getAliasGenerator, getASTFactory, getSessionFactoryHelper, getWalker, initializeMethods inherited from class org.hibernate.hql.ast.tree.SqlNode
getOriginalText, setDataType, setTextMethods inherited from class org.hibernate.hql.ast.tree.Node
getColumn, getFilename, getLine, getRenderText, getTextLength, initialize, initializeMethods inherited from class antlr.CommonAST
getText, getType, initialize, setTypeMethods 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, xmlSerializeRootOpenMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.hibernate.hql.ast.tree.InitializeableNode
initializeMethods inherited from interface org.hibernate.hql.ast.tree.SelectExpression
getAlias, getFromElement, getScalarColumnIndex, isConstructor, isReturnableEntity, isScalar, setAlias, setScalarColumn, setText
-
Field Details
-
useThetaStyleImplicitJoins
public static boolean useThetaStyleImplicitJoins -
REGRESSION_STYLE_JOIN_SUPPRESSION
public static boolean REGRESSION_STYLE_JOIN_SUPPRESSION -
DEF_ILLEGAL_COLL_DEREF_EXCP_BUILDER
public static final DotNode.IllegalCollectionDereferenceExceptionBuilder DEF_ILLEGAL_COLL_DEREF_EXCP_BUILDER -
ILLEGAL_COLL_DEREF_EXCP_BUILDER
-
-
Constructor Details
-
DotNode
public DotNode()
-
-
Method Details
-
setJoinType
public void setJoinType(int joinType) Sets the join type for this '.' node structure.- Parameters:
joinType- The type of join to use.- See Also:
-
getDisplayText
Description copied from interface:DisplayableNodeReturns additional display text for the AST node.- Specified by:
getDisplayTextin interfaceDisplayableNode- Overrides:
getDisplayTextin classFromReferenceNode- Returns:
- String - The additional display text.
-
resolveFirstChild
Resolves the left hand side of the DOT.- Overrides:
resolveFirstChildin classFromReferenceNode- Throws:
antlr.SemanticException
-
resolveInFunctionCall
public void resolveInFunctionCall(boolean generateJoin, boolean implicitJoin) throws antlr.SemanticException Description copied from interface:ResolvableNodeDoes the work of resolving inside of the scope of a function call- Specified by:
resolveInFunctionCallin interfaceResolvableNode- Overrides:
resolveInFunctionCallin classFromReferenceNode- Throws:
antlr.SemanticException
-
resolveIndex
Description copied from interface:ResolvableNodeDoes the work of resolving an an index [].- Specified by:
resolveIndexin interfaceResolvableNode- Throws:
antlr.SemanticException
-
resolve
public void resolve(boolean generateJoin, boolean implicitJoin, String classAlias, antlr.collections.AST parent) throws antlr.SemanticException Description copied from interface:ResolvableNodeDoes the work of resolving an identifier or a dot- Specified by:
resolvein interfaceResolvableNode- Throws:
antlr.SemanticException
-
getImpliedJoin
Description copied from class:FromReferenceNodeSub-classes can override this method if they produce implied joins (e.g. DotNode).- Overrides:
getImpliedJoinin classFromReferenceNode- Returns:
- an implied join created by this from reference.
-
getDataType
Description copied from interface:SelectExpressionReturns the data type of the select expression.- Specified by:
getDataTypein interfaceSelectExpression- Overrides:
getDataTypein classSqlNode- Returns:
- The data type of the select expression.
-
setPropertyPath
-
getPropertyPath
-
getLhs
-
getPath
Returns the full path of the node.- Specified by:
getPathin interfacePathNode- Overrides:
getPathin classFromReferenceNode- Returns:
- the full path of the node.
-
setFetch
public void setFetch(boolean fetch) -
setScalarColumnText
Description copied from interface:SelectExpressionAppends AST nodes that represent the columns after the current AST node. (e.g. 'as col0_O_')- Specified by:
setScalarColumnTextin interfaceSelectExpression- Parameters:
i- The index of the select expression in the projection list.- Throws:
antlr.SemanticException
-
resolveSelectExpression
Special method to resolve expressions in the SELECT list.- Throws:
antlr.SemanticException- if this cannot be resolved.
-
setResolvedConstant
-