Class H2ArrayContainsFunction
java.lang.Object
org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor
org.hibernate.query.sqm.function.AbstractSqmSelfRenderingFunctionDescriptor
org.hibernate.dialect.function.array.AbstractArrayContainsFunction
org.hibernate.dialect.function.array.H2ArrayContainsFunction
- All Implemented Interfaces:
FunctionRenderer
,SqmFunctionDescriptor
H2 requires a very special emulation, because
unnest
is pretty much useless,
due to https://github.com/h2database/h2database/issues/1815.
This emulation uses array_get
, array_length
and system_range
functions to roughly achieve the same.-
Field Summary
Fields inherited from class org.hibernate.dialect.function.array.AbstractArrayContainsFunction
LOG, nullable
-
Constructor Summary
ConstructorsConstructorDescriptionH2ArrayContainsFunction
(boolean nullable, int maximumArraySize, TypeConfiguration typeConfiguration) -
Method Summary
Modifier and TypeMethodDescriptionvoid
render
(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker) Methods inherited from class org.hibernate.dialect.function.array.AbstractArrayContainsFunction
getArgumentListSignature
Methods inherited from class org.hibernate.query.sqm.function.AbstractSqmSelfRenderingFunctionDescriptor
generateSqmAggregateFunctionExpression, generateSqmFunctionExpression, generateSqmOrderedSetAggregateFunctionExpression, generateSqmWindowFunctionExpression, getFunctionKind
Methods inherited from class org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor
generateAggregateSqmExpression, generateOrderedSetAggregateSqmExpression, generateSqmExpression, generateWindowSqmExpression, 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, isPredicate
-
Constructor Details
-
H2ArrayContainsFunction
public H2ArrayContainsFunction(boolean nullable, int maximumArraySize, TypeConfiguration typeConfiguration)
-
-
Method Details
-
render
public void render(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker) - Specified by:
render
in interfaceFunctionRenderer
- Overrides:
render
in classAbstractSqmSelfRenderingFunctionDescriptor
-