Class JsonExistsFunction
java.lang.Object
org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor
org.hibernate.query.sqm.function.AbstractSqmSelfRenderingFunctionDescriptor
org.hibernate.dialect.function.json.JsonExistsFunction
- All Implemented Interfaces:
FunctionRenderer
,SqmFunctionDescriptor
- Direct Known Subclasses:
CockroachDBJsonExistsFunction
,H2JsonExistsFunction
,HANAJsonExistsFunction
,MySQLJsonExistsFunction
,PostgreSQLJsonExistsFunction
,SQLServerJsonExistsFunction
Standard json_exists function.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static final record
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final boolean
protected final boolean
-
Constructor Summary
ConstructorsConstructorDescriptionJsonExistsFunction
(TypeConfiguration typeConfiguration, boolean supportsJsonPathExpression, boolean supportsJsonPathPassingClause) -
Method Summary
Modifier and TypeMethodDescriptionprotected <T> SelfRenderingSqmFunction<T>
generateSqmFunctionExpression
(List<? extends SqmTypedNode<?>> arguments, ReturnableType<T> impliedResultType, QueryEngine queryEngine) Return an SQM node or subtree representing an invocation of this function with the given arguments.boolean
Whether the function renders as a predicate.void
render
(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker) protected void
render
(SqlAppender sqlAppender, JsonExistsFunction.JsonExistsArguments arguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker) Methods inherited from class org.hibernate.query.sqm.function.AbstractSqmSelfRenderingFunctionDescriptor
generateSqmAggregateFunctionExpression, generateSqmOrderedSetAggregateFunctionExpression, generateSqmWindowFunctionExpression, getFunctionKind
Methods inherited from class org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor
generateAggregateSqmExpression, generateOrderedSetAggregateSqmExpression, generateSqmExpression, generateWindowSqmExpression, getArgumentListSignature, getArgumentsValidator, getArgumentTypeResolver, getName, getReturnSignature, getReturnTypeResolver, getSignature
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.hibernate.query.sqm.function.FunctionRenderer
render, render, render, render
Methods inherited from interface org.hibernate.query.sqm.function.SqmFunctionDescriptor
alwaysIncludesParentheses, generateSqmExpression, generateSqmExpression
-
Field Details
-
supportsJsonPathExpression
protected final boolean supportsJsonPathExpression -
supportsJsonPathPassingClause
protected final boolean supportsJsonPathPassingClause
-
-
Constructor Details
-
JsonExistsFunction
public JsonExistsFunction(TypeConfiguration typeConfiguration, boolean supportsJsonPathExpression, boolean supportsJsonPathPassingClause)
-
-
Method Details
-
isPredicate
public boolean isPredicate()Description copied from interface:SqmFunctionDescriptor
Whether the function renders as a predicate. -
generateSqmFunctionExpression
protected <T> SelfRenderingSqmFunction<T> generateSqmFunctionExpression(List<? extends SqmTypedNode<?>> arguments, ReturnableType<T> impliedResultType, QueryEngine queryEngine) Description copied from class:AbstractSqmFunctionDescriptor
Return an SQM node or subtree representing an invocation of this function with the given arguments. This method may be overridden in the case of function descriptors that wish to customize creation of the node.- Overrides:
generateSqmFunctionExpression
in classAbstractSqmSelfRenderingFunctionDescriptor
- Parameters:
arguments
- the arguments of the function invocationimpliedResultType
- the function return type as inferred from its usage
-
render
public void render(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker) - Specified by:
render
in interfaceFunctionRenderer
- Overrides:
render
in classAbstractSqmSelfRenderingFunctionDescriptor
-
render
protected void render(SqlAppender sqlAppender, JsonExistsFunction.JsonExistsArguments arguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker)
-