Package org.hibernate.query.sqm.function
Class SelfRenderingSqmFunction<T>
- java.lang.Object
-
- org.hibernate.query.sqm.tree.AbstractSqmNode
-
- org.hibernate.query.sqm.tree.jpa.AbstractJpaTupleElement<T>
-
- org.hibernate.query.sqm.tree.jpa.AbstractJpaSelection<T>
-
- org.hibernate.query.sqm.tree.expression.AbstractSqmExpression<T>
-
- org.hibernate.query.sqm.tree.expression.SqmFunction<T>
-
- org.hibernate.query.sqm.function.SelfRenderingSqmFunction<T>
-
- All Implemented Interfaces:
Expression<T>
,Selection<T>
,TupleElement<T>
,Serializable
,JpaCriteriaNode
,JpaExpression<T>
,JpaFunction<T>
,JpaSelection<T>
,JpaTupleElement<T>
,SemanticPathPart
,SqmExpression<T>
,SqmSelectableNode<T>
,SqmExpressibleAccessor<T>
,SqmNode
,SqmTypedNode<T>
,SqmVisitableNode
- Direct Known Subclasses:
FormatFunction.FormatSqmFunction
,SelfRenderingSqmAggregateFunction
,SelfRenderingSqmWindowFunction
public class SelfRenderingSqmFunction<T> extends SqmFunction<T>
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SelfRenderingSqmFunction(SqmFunctionDescriptor descriptor, FunctionRenderer renderer, List<? extends SqmTypedNode<?>> arguments, @Nullable ReturnableType<T> impliedResultType, @Nullable ArgumentsValidator argumentsValidator, FunctionReturnTypeResolver returnTypeResolver, NodeBuilder nodeBuilder, String name)
SelfRenderingSqmFunction(SqmFunctionDescriptor descriptor, FunctionRenderingSupport renderingSupport, List<? extends SqmTypedNode<?>> arguments, @Nullable ReturnableType<T> impliedResultType, @Nullable ArgumentsValidator argumentsValidator, FunctionReturnTypeResolver returnTypeResolver, NodeBuilder nodeBuilder, String name)
Deprecated, for removal: This API element is subject to removal in a future version.
-
Method Summary
-
Methods inherited from class org.hibernate.query.sqm.tree.expression.SqmFunction
accept, appendHqlString, getArguments, getFunctionDescriptor, getFunctionName, resolveIndexedAccess, resolvePathPart
-
Methods inherited from class org.hibernate.query.sqm.tree.expression.AbstractSqmExpression
applyInferableType, as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, equalTo, equalTo, getJavaTypeDescriptor, in, in, in, in, internalApplyInferableType, isNotNull, isNull, nodeBuilder
-
Methods inherited from class org.hibernate.query.sqm.tree.jpa.AbstractJpaSelection
alias, getSelectionItems, isCompoundSelection
-
Methods inherited from class org.hibernate.query.sqm.tree.jpa.AbstractJpaTupleElement
copyTo, getAlias, setAlias, setExpressibleType
-
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.criteria.JpaSelection
alias, getCompoundSelectionItems, getSelectionItems
-
Methods inherited from interface org.hibernate.query.criteria.JpaTupleElement
getJavaType, getJavaTypeDescriptor, getJavaTypeName, isEnum
-
Methods inherited from interface jakarta.persistence.criteria.Selection
isCompoundSelection
-
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
cast, castAs, visitSubSelectableNodes
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmNode
asLoggableText
-
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
toHqlString
-
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
-
-
-
Constructor Detail
-
SelfRenderingSqmFunction
@Deprecated(forRemoval=true) public SelfRenderingSqmFunction(SqmFunctionDescriptor descriptor, FunctionRenderingSupport renderingSupport, List<? extends SqmTypedNode<?>> arguments, @Nullable ReturnableType<T> impliedResultType, @Nullable ArgumentsValidator argumentsValidator, FunctionReturnTypeResolver returnTypeResolver, NodeBuilder nodeBuilder, String name)
Deprecated, for removal: This API element is subject to removal in a future version.
-
SelfRenderingSqmFunction
public SelfRenderingSqmFunction(SqmFunctionDescriptor descriptor, FunctionRenderer renderer, List<? extends SqmTypedNode<?>> arguments, @Nullable ReturnableType<T> impliedResultType, @Nullable ArgumentsValidator argumentsValidator, FunctionReturnTypeResolver returnTypeResolver, NodeBuilder nodeBuilder, String name)
-
-
Method Detail
-
copy
public SelfRenderingSqmFunction<T> copy(SqmCopyContext context)
-
getRenderingSupport
@Deprecated(forRemoval=true) public FunctionRenderingSupport getRenderingSupport()
Deprecated, for removal: This API element is subject to removal in a future version.UsegetFunctionRenderer()
instead
-
getFunctionRenderer
public FunctionRenderer getFunctionRenderer()
-
getImpliedResultType
protected @Nullable ReturnableType<T> getImpliedResultType()
-
getArgumentsValidator
protected @Nullable ArgumentsValidator getArgumentsValidator()
-
getReturnTypeResolver
protected FunctionReturnTypeResolver getReturnTypeResolver()
-
resolveSqlAstArguments
protected List<SqlAstNode> resolveSqlAstArguments(List<? extends SqmTypedNode<?>> sqmArguments, SqmToSqlAstConverter walker)
-
convertToSqlAst
public Expression convertToSqlAst(SqmToSqlAstConverter walker)
- Specified by:
convertToSqlAst
in classSqmFunction<T>
-
getNodeType
public @Nullable SqmExpressible<T> getNodeType()
Description copied from interface:SqmExpression
The expression's type.Can change as a result of calls to
SqmExpression.applyInferableType(org.hibernate.query.sqm.SqmExpressible<?>)
- Specified by:
getNodeType
in interfaceSqmExpression<T>
- Specified by:
getNodeType
in interfaceSqmTypedNode<T>
- Overrides:
getNodeType
in classAbstractJpaTupleElement<T>
-
resolveResultType
@Deprecated(forRemoval=true) protected @Nullable ReturnableType<?> resolveResultType(TypeConfiguration typeConfiguration)
Deprecated, for removal: This API element is subject to removal in a future version.
-
resolveResultType
public @Nullable ReturnableType<?> resolveResultType(SqmToSqlAstConverter walker)
-
determineResultType
protected @Nullable ReturnableType<?> determineResultType(SqmToSqlAstConverter converter, TypeConfiguration typeConfiguration)
-
resolveResultType
@Deprecated(forRemoval=true) protected @Nullable ReturnableType<?> resolveResultType(Supplier<MappingModelExpressible<?>> inferredTypeSupplier, TypeConfiguration typeConfiguration)
Deprecated, for removal: This API element is subject to removal in a future version.
-
getMappingModelExpressible
protected MappingModelExpressible<?> getMappingModelExpressible(SqmToSqlAstConverter walker, ReturnableType<?> resultType, List<SqlAstNode> arguments)
-
-