@PublicEvolving public interface ArgumentTypeStrategy
Modifier and Type | Method and Description |
---|---|
Signature.Argument |
getExpectedArgument(FunctionDefinition functionDefinition,
int argumentPos)
Returns a summary of the function's expected argument at
argumentPos . |
Optional<DataType> |
inferArgumentType(CallContext callContext,
int argumentPos,
boolean throwOnFailure)
Main logic for inferring and validating an argument.
|
Optional<DataType> inferArgumentType(CallContext callContext, int argumentPos, boolean throwOnFailure)
CallContext.getArgumentDataTypes()
at argumentPos
, a casting operation can be inserted. An empty result means that the
given input type could not be inferred.callContext
- provides details about the function callargumentPos
- argument index in the CallContext
throwOnFailure
- whether this function is allowed to throw an ValidationException
with a meaningful exception in case the inference is not successful
or if this function should simply return an empty result.CallContext.newValidationError(String, Object...)
Signature.Argument getExpectedArgument(FunctionDefinition functionDefinition, int argumentPos)
argumentPos
.functionDefinition
- the function definition that defines the function currently being
called.argumentPos
- the position within the function call for which the signature should be
retrievedCopyright © 2014–2024 The Apache Software Foundation. All rights reserved.