Interface FunctionReturnTypeResolver
-
- All Known Implementing Classes:
ArrayViaArgumentReturnTypeResolver
,ArrayViaElementArgumentReturnTypeResolver
,AvgFunction.ReturnTypeResolver
,ElementViaArrayArgumentReturnTypeResolver
,JsonArrayViaElementArgumentReturnTypeResolver
,SumReturnTypeResolver
public interface FunctionReturnTypeResolver
Pluggable strategy for resolving a function return type for a specific call.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default String
getReturnType()
The return type in a format suitable for display to the user.BasicValuedMapping
resolveFunctionReturnType(Supplier<BasicValuedMapping> impliedTypeAccess, List<? extends SqlAstNode> arguments)
Resolve the return type for a function given its context-implied type and the arguments to this call.default @Nullable ReturnableType<?>
resolveFunctionReturnType(ReturnableType<?> impliedType, @Nullable SqmToSqlAstConverter converter, List<? extends SqmTypedNode<?>> arguments, TypeConfiguration typeConfiguration)
Resolve the return type for a function given its context-implied type and the arguments to this call.default @Nullable ReturnableType<?>
resolveFunctionReturnType(ReturnableType<?> impliedType, Supplier<MappingModelExpressible<?>> inferredTypeSupplier, List<? extends SqmTypedNode<?>> arguments, TypeConfiguration typeConfiguration)
Deprecated, for removal: This API element is subject to removal in a future version.default @Nullable ReturnableType<?>
resolveFunctionReturnType(ReturnableType<?> impliedType, List<? extends SqmTypedNode<?>> arguments, TypeConfiguration typeConfiguration)
Deprecated, for removal: This API element is subject to removal in a future version.
-
-
-
Method Detail
-
resolveFunctionReturnType
@Deprecated(forRemoval=true) default @Nullable ReturnableType<?> resolveFunctionReturnType(ReturnableType<?> impliedType, List<? extends SqmTypedNode<?>> arguments, TypeConfiguration typeConfiguration)
Deprecated, for removal: This API element is subject to removal in a future version.Resolve the return type for a function given its context-implied type and the arguments to this call.The context-implied type is the type implied by where the function occurs in the query. E.g., for an equality predicate (`something = some_function`) the implied type of the return from `some_function` would be defined by the type of `some_function`.
- Returns:
- The resolved type.
-
resolveFunctionReturnType
@Deprecated(forRemoval=true) default @Nullable ReturnableType<?> resolveFunctionReturnType(ReturnableType<?> impliedType, Supplier<MappingModelExpressible<?>> inferredTypeSupplier, List<? extends SqmTypedNode<?>> arguments, TypeConfiguration typeConfiguration)
Deprecated, for removal: This API element is subject to removal in a future version.Resolve the return type for a function given its context-implied type and the arguments to this call.The context-implied type is the type implied by where the function occurs in the query. E.g., for an equality predicate (`something = some_function`) the implied type of the return from `some_function` would be defined by the type of `some_function`.
- Returns:
- The resolved type.
-
resolveFunctionReturnType
default @Nullable ReturnableType<?> resolveFunctionReturnType(ReturnableType<?> impliedType, @Nullable SqmToSqlAstConverter converter, List<? extends SqmTypedNode<?>> arguments, TypeConfiguration typeConfiguration)
Resolve the return type for a function given its context-implied type and the arguments to this call.The context-implied type is the type implied by where the function occurs in the query. E.g., for an equality predicate (`something = some_function`) the implied type of the return from `some_function` would be defined by the type of `some_function`.
- Returns:
- The resolved type.
-
resolveFunctionReturnType
BasicValuedMapping resolveFunctionReturnType(Supplier<BasicValuedMapping> impliedTypeAccess, List<? extends SqlAstNode> arguments)
Resolve the return type for a function given its context-implied type and the arguments to this call.The context-implied type is the type implied by where the function occurs in the query. E.g., for an equality predicate (`something = some_function`) the implied type of the return from `some_function` would be defined by the type of `some_function`.
- Returns:
- The resolved type.
-
getReturnType
default String getReturnType()
The return type in a format suitable for display to the user.
-
-