Class SqlDescriptorOperator
java.lang.Object
org.apache.calcite.sql.SqlOperator
org.apache.flink.table.planner.functions.sql.SqlDescriptorOperator
public class SqlDescriptorOperator
extends org.apache.calcite.sql.SqlOperator
DESCRIPTOR appears as an argument in a function. DESCRIPTOR accepts a list of identifiers that
represent a list of names. The interpretation of names is left to the function.
A typical syntax is DESCRIPTOR(col_name, ...).
An example is a table-valued function that takes names of columns to filter on.
Note: we copied the implementation from Calcite's SqlDescriptorOperator, but support forwarding column name information and
data types if available. This is important because we will generate an additional
window_time time attribute column which should keep the same type with original time attribute.
-
Field Summary
Fields inherited from class org.apache.calcite.sql.SqlOperator
kind, MDX_PRECEDENCE, NL -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancheckOperandTypes(org.apache.calcite.sql.SqlCallBinding callBinding, boolean throwOnFailure) org.apache.calcite.rel.type.RelDataTypederiveType(org.apache.calcite.sql.validate.SqlValidator validator, org.apache.calcite.sql.validate.SqlValidatorScope scope, org.apache.calcite.sql.SqlCall call) org.apache.calcite.sql.SqlOperandCountRangeorg.apache.calcite.sql.SqlSyntaxMethods inherited from class org.apache.calcite.sql.SqlOperator
acceptCall, acceptCall, adjustType, allowsFraming, argumentMustBeScalar, checkOperandCount, constructArgNameList, constructArgTypeList, constructOperandList, createCall, createCall, createCall, createCall, createCall, createCall, createCall, deriveOperandType, equals, getAllowedSignatures, getAllowedSignatures, getKind, getLeftPrec, getMonotonicity, getMonotonicity, getName, getNameAsId, getOperandTypeChecker, getOperandTypeInference, getReturnTypeInference, getRightPrec, getSignatureTemplate, getStrongPolicyInference, hashCode, inferReturnType, inferReturnType, isAggregator, isDeterministic, isDynamicFunction, isGroup, isGroupAuxiliary, isName, isSymmetrical, leftPrec, not, preValidateCall, requiresDecimalExpansion, requiresOrder, requiresOver, reverse, rewriteCall, rightPrec, toString, unparse, unparseListClause, unparseListClause, validateCall, validateOperands, validRexOperands
-
Constructor Details
-
SqlDescriptorOperator
public SqlDescriptorOperator()
-
-
Method Details
-
deriveType
public org.apache.calcite.rel.type.RelDataType deriveType(org.apache.calcite.sql.validate.SqlValidator validator, org.apache.calcite.sql.validate.SqlValidatorScope scope, org.apache.calcite.sql.SqlCall call) - Overrides:
deriveTypein classorg.apache.calcite.sql.SqlOperator
-
checkOperandTypes
public boolean checkOperandTypes(org.apache.calcite.sql.SqlCallBinding callBinding, boolean throwOnFailure) - Overrides:
checkOperandTypesin classorg.apache.calcite.sql.SqlOperator
-
getOperandCountRange
public org.apache.calcite.sql.SqlOperandCountRange getOperandCountRange()- Overrides:
getOperandCountRangein classorg.apache.calcite.sql.SqlOperator
-
getSyntax
public org.apache.calcite.sql.SqlSyntax getSyntax()- Specified by:
getSyntaxin classorg.apache.calcite.sql.SqlOperator
-