public class AssignableOperandTypeChecker extends Object implements SqlOperandTypeChecker
SqlOperandTypeChecker by
verifying that the type of each argument is assignable to a predefined set of
parameter types (under the SQL definition of "assignable").SqlOperandTypeChecker.Consistency| Constructor and Description |
|---|
AssignableOperandTypeChecker(List<RelDataType> paramTypes,
@Nullable List<String> paramNames)
Instantiates this strategy with a specific set of parameter types.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
checkOperandTypes(SqlCallBinding callBinding,
boolean throwOnFailure)
Checks the types of all operands to an operator call.
|
String |
getAllowedSignatures(SqlOperator op,
String opName)
Returns a string describing the allowed formal signatures of a call, e.g.
|
SqlOperandTypeChecker.Consistency |
getConsistency()
Returns the strategy for making the arguments have consistency types.
|
SqlOperandCountRange |
getOperandCountRange()
Returns the range of operand counts allowed in a call.
|
boolean |
isOptional(int i)
Returns whether the
ith operand is optional. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitisFixedParameters, typeInferencepublic AssignableOperandTypeChecker(List<RelDataType> paramTypes, @Nullable List<String> paramNames)
paramTypes - parameter types for operands; index in this array
corresponds to operand numberparamNames - parameter names, or nullpublic boolean isOptional(int i)
SqlOperandTypeCheckerith operand is optional.isOptional in interface SqlOperandTypeCheckerpublic SqlOperandCountRange getOperandCountRange()
SqlOperandTypeCheckergetOperandCountRange in interface SqlOperandTypeCheckerpublic boolean checkOperandTypes(SqlCallBinding callBinding, boolean throwOnFailure)
SqlOperandTypeCheckercheckOperandTypes in interface SqlOperandTypeCheckercallBinding - description of the call to be checkedthrowOnFailure - whether to throw an exception if check fails
(otherwise returns false in that case)public String getAllowedSignatures(SqlOperator op, String opName)
SqlOperandTypeCheckergetAllowedSignatures in interface SqlOperandTypeCheckerop - the operator being checkedopName - name to use for the operator in case of aliasingpublic SqlOperandTypeChecker.Consistency getConsistency()
SqlOperandTypeCheckergetConsistency in interface SqlOperandTypeCheckerCopyright © 2012-2022 Apache Software Foundation. All Rights Reserved.