org.eigenbase.sql.type
Class SetopOperandTypeChecker
java.lang.Object
org.eigenbase.sql.type.SetopOperandTypeChecker
- All Implemented Interfaces:
- SqlOperandTypeChecker
public class SetopOperandTypeChecker
- extends Object
- implements SqlOperandTypeChecker
Parameter type-checking strategy for a set operator (UNION, INTERSECT,
EXCEPT).
Both arguments must be records with the same number of fields, and the
fields must be union-compatible.
- Version:
- $Id: //open/dev/farrago/src/org/eigenbase/sql/type/SetopOperandTypeChecker.java#11 $
- Author:
- Jack Frost
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SetopOperandTypeChecker
public SetopOperandTypeChecker()
checkOperandTypes
public boolean checkOperandTypes(SqlCallBinding callBinding,
boolean throwOnFailure)
- Description copied from interface:
SqlOperandTypeChecker
- Checks the types of all operands to an operator call.
- Specified by:
checkOperandTypes
in interface SqlOperandTypeChecker
- Parameters:
callBinding
- description of the call to be checkedthrowOnFailure
- whether to throw an exception if check fails
(otherwise returns false in that case)
- Returns:
- whether check succeeded
getOperandCountRange
public SqlOperandCountRange getOperandCountRange()
- Specified by:
getOperandCountRange
in interface SqlOperandTypeChecker
- Returns:
- range of operand counts allowed in a call
getAllowedSignatures
public String getAllowedSignatures(SqlOperator op,
String opName)
- Description copied from interface:
SqlOperandTypeChecker
- Returns a string describing the allowed formal signatures of a call, e.g.
"SUBSTR(VARCHAR, INTEGER, INTEGER)".
- Specified by:
getAllowedSignatures
in interface SqlOperandTypeChecker
- Parameters:
op
- the operator being checkedopName
- name to use for the operator in case of aliasing
- Returns:
- generated string