@PublicEvolving public static class TypeInference.Builder extends Object
TypeInference
.Constructor and Description |
---|
Builder() |
Modifier and Type | Method and Description |
---|---|
TypeInference.Builder |
accumulatorTypeStrategy(TypeStrategy accumulatorTypeStrategy)
Sets the strategy for inferring the intermediate accumulator data type of a function
call.
|
TypeInference |
build() |
TypeInference.Builder |
inputTypeStrategy(InputTypeStrategy inputTypeStrategy)
Sets the strategy for inferring and validating input arguments in a function call.
|
TypeInference.Builder |
namedArguments(List<String> argumentNames)
Sets the list of argument names for specifying a fixed, not overloaded, not vararg input
signature explicitly.
|
TypeInference.Builder |
namedArguments(String... argumentNames) |
TypeInference.Builder |
optionalArguments(List<Boolean> optionalArguments)
Sets the list of argument optionals for specifying optional arguments in the input
signature explicitly.
|
TypeInference.Builder |
outputTypeStrategy(TypeStrategy outputTypeStrategy)
Sets the strategy for inferring the final output data type of a function call.
|
TypeInference.Builder |
typedArguments(DataType... argumentTypes) |
TypeInference.Builder |
typedArguments(List<DataType> argumentTypes)
Sets the list of argument types for specifying a fixed, not overloaded, not vararg input
signature explicitly.
|
public TypeInference.Builder namedArguments(List<String> argumentNames)
This information is useful for SQL's concept of named arguments using the assignment
operator (e.g. FUNC(max => 42)
). The names are used for reordering the call's
arguments to the formal argument order of the function.
public TypeInference.Builder namedArguments(String... argumentNames)
namedArguments(List)
public TypeInference.Builder optionalArguments(List<Boolean> optionalArguments)
This information is useful for SQL's concept of named arguments using the assignment operator. The optionals are used to determine whether an argument is optional or required in the function call.
public TypeInference.Builder typedArguments(List<DataType> argumentTypes)
This information is useful for optional arguments with default value. In particular, the number of arguments that need to be filled with a default value and their types is important.
public TypeInference.Builder typedArguments(DataType... argumentTypes)
typedArguments(List)
public TypeInference.Builder inputTypeStrategy(InputTypeStrategy inputTypeStrategy)
A InputTypeStrategies.WILDCARD
strategy function is assumed by default.
public TypeInference.Builder accumulatorTypeStrategy(TypeStrategy accumulatorTypeStrategy)
public TypeInference.Builder outputTypeStrategy(TypeStrategy outputTypeStrategy)
Required.
public TypeInference build()
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.