public class FamilyOperandTypeChecker extends Object implements SqlSingleOperandTypeChecker
SqlOperandTypeChecker.Consistency| Modifier and Type | Field and Description |
|---|---|
protected com.google.common.collect.ImmutableList<SqlTypeFamily> |
families |
| Modifier and Type | Method and Description |
|---|---|
boolean |
checkOperandTypes(SqlCallBinding callBinding,
boolean throwOnFailure)
Checks the types of all operands to an operator call.
|
boolean |
checkSingleOperandType(SqlCallBinding callBinding,
SqlNode node,
int iFormalOperand,
boolean throwOnFailure)
Checks the type of a single operand against a particular ordinal position
within a formal operator signature.
|
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() |
protected final com.google.common.collect.ImmutableList<SqlTypeFamily> families
public boolean checkSingleOperandType(SqlCallBinding callBinding, SqlNode node, int iFormalOperand, boolean throwOnFailure)
SqlSingleOperandTypeCheckerFor example, when validating the actual call
the strategy for validating the operand Z might involve checking its type against the formal signature OP(W). In this case,C(X, Y, Z)
iFormalOperand would be zero, even though the position of Z within
call C is two.checkSingleOperandType in interface SqlSingleOperandTypeCheckercallBinding - description of the call being checked; this is only
provided for context when throwing an exception; the
implementation should NOT examine the
operands of the call as part of the checknode - the actual operand to be checkediFormalOperand - the 0-based formal operand ordinalthrowOnFailure - whether to throw an exception if check fails
(otherwise returns false in that case)public 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 SqlOperandCountRange getOperandCountRange()
getOperandCountRange in interface SqlOperandTypeCheckerpublic 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–2015 The Apache Software Foundation. All rights reserved.