Package org.hibernate.query.sqm.tree
This package contains the classes that make up the SQM tree nodes.
- "API Note:"
- the choice to prefix all SQM tree node class names with Sqm was
made to help make consumers easier to write - consumers are likely to
have classes with the same purpose in their AST (e.g. the notion of a
"From". But if both projects define a class named
Fromthen the consumer would have to fully qualify one reference to distinguish. That makes for overly long code. Prefixing the names of classes helps alleviate that problem.
-
Interface Summary Interface Description SqmCopyContext SqmDeleteOrUpdateStatement<T> In some cases it is useful to be able to handle UPDATE or DELETE SQM trees using a single contract.SqmDmlStatement<E> Common extension of SqmStatement for DML (delete, update and insert-select) statements.SqmExpressibleAccessor<T> Accessor forSqmExpressible.SqmNode Base contract for any SQM AST node.SqmQuery<T> Commonality between a top-level statement and a sub-querySqmStatement<T> The basic SQM statement contract for top-level statementsSqmStatement.ParameterResolutions SqmTypedNode<T> Optional contract for SqmNode implementations which are typedSqmVisitableNode Optional contract for SqmNode implementations that can be visited by a SemanticQueryWalker. -
Class Summary Class Description AbstractSqmDmlStatement<E> AbstractSqmNode Base implementation of a criteria node.AbstractSqmRestrictedDmlStatement<T> AbstractSqmStatement<T> -
Enum Summary Enum Description SqmJoinType Represents a canonical join type.