Top Description Fields Constructors Methods
org.hibernate.dialect.function

public Class InsertSubstringOverlayEmulation

extends AbstractSqmFunctionDescriptor
Class Inheritance
Imports
org.hibernate.query.ReturnableType, org.hibernate.query.sqm.BinaryArithmeticOperator, .ComparisonOperator, org.hibernate.query.spi.QueryEngine, org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor, .SelfRenderingSqmFunction, .SqmFunctionDescriptor, org.hibernate.query.sqm.produce.function.ArgumentTypesValidator, .StandardArgumentsValidators, .StandardFunctionArgumentTypeResolvers, .StandardFunctionReturnTypeResolvers, org.hibernate.query.sqm.tree.SqmTypedNode, org.hibernate.query.sqm.tree.expression.SqmBinaryArithmetic, .SqmCaseSearched, .SqmExpression, .SqmLiteral, org.hibernate.query.sqm.tree.predicate.SqmComparisonPredicate, org.hibernate.type.BasicType, .StandardBasicTypes, org.hibernate.type.spi.TypeConfiguration, java.util.List, jakarta.persistence.criteria.Expression

Emulates the ANSI SQL-standard overlay() function using insert() substring(), and concat().
Author
Gavin King

Field Summary

Modifier and TypeField and Description
private final boolean

Constructor Summary

AccessConstructor and Description
public
InsertSubstringOverlayEmulation(TypeConfiguration typeConfiguration, boolean strictSubstring)

Method Summary

Modifier and TypeMethod and Description
protected <T> SelfRenderingSqmFunction<T>
generateSqmFunctionExpression(List<? extends SqmTypedNode<?>>
the arguments of the function invocation
arguments
,
ReturnableType<T>
the function return type as inferred from its usage
impliedResultType
,
QueryEngine queryEngine)

Implements abstract org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor.generateSqmFunctionExpression.

Return an SQM node or subtree representing an invocation of this function with the given arguments.
public String
Inherited from org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor:
generateAggregateSqmExpressiongenerateOrderedSetAggregateSqmExpressiongenerateSqmAggregateFunctionExpressiongenerateSqmExpressiongenerateSqmOrderedSetAggregateFunctionExpressiongenerateSqmWindowFunctionExpressiongenerateWindowSqmExpressiongetArgumentsValidatorgetArgumentTypeResolvergetNamegetReturnSignaturegetReturnTypeResolvergetSignature

Field Detail

strictSubstringback to summary
private final boolean strictSubstring

Constructor Detail

InsertSubstringOverlayEmulationback to summary
public InsertSubstringOverlayEmulation(TypeConfiguration typeConfiguration, boolean strictSubstring)

Method Detail

generateSqmFunctionExpressionback to summary
protected <T> SelfRenderingSqmFunction<T> generateSqmFunctionExpression(List<? extends SqmTypedNode<?>> arguments, ReturnableType<T> impliedResultType, QueryEngine queryEngine)

Implements abstract org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor.generateSqmFunctionExpression.

Doc from org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor.generateSqmFunctionExpression.

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.

Parameters
arguments:List<? extends SqmTypedNode<?>>

the arguments of the function invocation

impliedResultType:ReturnableType<T>

the function return type as inferred from its usage

Annotations
@Override
getArgumentListSignatureback to summary
public String getArgumentListSignature()

Overrides org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor.getArgumentListSignature.

Annotations
@Override