Interface SqmNegatablePredicate
-
- All Superinterfaces:
Expression<Boolean>,JpaCriteriaNode,JpaExpression<Boolean>,JpaPredicate,JpaSelection<Boolean>,JpaTupleElement<Boolean>,Predicate,Selection<Boolean>,Serializable,SqmExpressibleAccessor<Boolean>,SqmExpression<Boolean>,SqmNode,SqmPredicate,SqmSelectableNode<Boolean>,SqmTypedNode<Boolean>,SqmVisitableNode,TupleElement<Boolean>
- All Known Subinterfaces:
SqmInPredicate<T>
- All Known Implementing Classes:
AbstractNegatableSqmPredicate,SqmBetweenPredicate,SqmBooleanExpressionPredicate,SqmComparisonPredicate,SqmEmptinessPredicate,SqmExistsPredicate,SqmInListPredicate,SqmInSubQueryPredicate,SqmLikePredicate,SqmMemberOfPredicate,SqmNegatedPredicate,SqmNullnessPredicate,SqmTruthnessPredicate
public interface SqmNegatablePredicate extends SqmPredicate
Contract for predicates that have a negated form, e.g.x is not nullas opposed tonot(x is null)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jakarta.persistence.criteria.Predicate
Predicate.BooleanOperator
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleanisNegated()Is this predicate (currently) negated?voidnegate()Apply an external negation.-
Methods inherited from interface org.hibernate.query.criteria.JpaSelection
alias, getCompoundSelectionItems, getSelectionItems
-
Methods inherited from interface org.hibernate.query.criteria.JpaTupleElement
getJavaType, getJavaTypeName, isEnum
-
Methods inherited from interface jakarta.persistence.criteria.Predicate
getExpressions, getOperator
-
Methods inherited from interface jakarta.persistence.criteria.Selection
isCompoundSelection
-
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
applyInferableType, as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, cast, castAs, equalTo, equalTo, getNodeType, in, in, in, in, isNotNull, isNull, visitSubSelectableNodes
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmNode
asLoggableText, nodeBuilder
-
Methods inherited from interface org.hibernate.query.sqm.tree.predicate.SqmPredicate
copy, getJavaTypeDescriptor, not
-
Methods inherited from interface org.hibernate.query.sqm.tree.select.SqmSelectableNode
getTupleLength
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmTypedNode
getExpressible, getNodeJavaType
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
accept, appendHqlString, toHqlString
-
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
-
-
-
Method Detail
-
isNegated
boolean isNegated()
Is this predicate (currently) negated?
-
negate
void negate()
Apply an external negation. Called when we encounter aNOTgrouping.For example, for
not(x is null)we build theSqmNullnessPredicateand then call its negate method which results inx is not null.Can be applied nested as well. For example,
not(not(x is null))becomesx is nullbecause the double-negative cancel each other out.
-
-