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
From
then 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.