public class CompositeSingleOperandTypeChecker extends CompositeOperandTypeChecker implements SqlSingleOperandTypeChecker
SqlSingleOperandTypeChecker rules to be
combined into one rule.CompositeOperandTypeChecker.CompositionSqlOperandTypeChecker.ConsistencyallowedRules, composition| Modifier and Type | Method and Description |
|---|---|
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.
|
com.google.common.collect.ImmutableList<? extends SqlSingleOperandTypeChecker> |
getRules() |
checkOperandTypes, getAllowedSignatures, getConsistency, getOperandCountRangeclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcheckOperandTypes, getAllowedSignatures, getConsistency, getOperandCountRangepublic com.google.common.collect.ImmutableList<? extends SqlSingleOperandTypeChecker> getRules()
getRules in class CompositeOperandTypeCheckerpublic 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)Copyright © 2012–2015 The Apache Software Foundation. All rights reserved.