Package org.apache.calcite.sql.fun
Class SqlItemOperator
- java.lang.Object
-
- org.apache.calcite.sql.SqlOperator
-
- org.apache.calcite.sql.SqlSpecialOperator
-
- org.apache.calcite.sql.fun.SqlItemOperator
-
public class SqlItemOperator extends org.apache.calcite.sql.SqlSpecialOperatorThe item operator[ ... ], used to access a given element of an array, map or struct. For example,myArray[3],"myMap['foo']",myStruct[2]ormyStruct['fieldName'].This class was copied over from Calcite 1.39.0 version to support access variant (FLINK-37924).
Line 148 ~ 153, CALCITE-7325, should be removed after upgrading Calcite to 1.42.0.
-
-
Constructor Summary
Constructors Constructor Description SqlItemOperator(String name, org.apache.calcite.sql.type.SqlSingleOperandTypeChecker operandTypeChecker, int offset, boolean safe)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancheckOperandTypes(org.apache.calcite.sql.SqlCallBinding callBinding, boolean throwOnFailure)StringgetAllowedSignatures(String name)org.apache.calcite.sql.SqlOperandCountRangegetOperandCountRange()org.apache.calcite.sql.type.SqlSingleOperandTypeCheckergetOperandTypeChecker()org.apache.calcite.rel.type.RelDataTypeinferReturnType(org.apache.calcite.sql.SqlOperatorBinding opBinding)org.apache.calcite.sql.SqlSpecialOperator.ReduceResultreduceExpr(int ordinal, org.apache.calcite.sql.SqlSpecialOperator.TokenSequence list)voidunparse(org.apache.calcite.sql.SqlWriter writer, org.apache.calcite.sql.SqlCall call, int leftPrec, int rightPrec)-
Methods 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, deriveType, equals, getAllowedSignatures, getKind, getLeftPrec, getMonotonicity, getMonotonicity, getName, getNameAsId, getOperandTypeInference, getReturnTypeInference, getRightPrec, getSignatureTemplate, getStrongPolicyInference, hashCode, inferReturnType, isAggregator, isDeterministic, isDynamicFunction, isGroup, isGroupAuxiliary, isName, isSymmetrical, leftPrec, not, preValidateCall, requiresDecimalExpansion, requiresOrder, requiresOver, reverse, rewriteCall, rightPrec, toString, unparseListClause, unparseListClause, validateCall, validateOperands, validRexOperands
-
-
-
-
Constructor Detail
-
SqlItemOperator
public SqlItemOperator(String name, org.apache.calcite.sql.type.SqlSingleOperandTypeChecker operandTypeChecker, int offset, boolean safe)
-
-
Method Detail
-
reduceExpr
public org.apache.calcite.sql.SqlSpecialOperator.ReduceResult reduceExpr(int ordinal, org.apache.calcite.sql.SqlSpecialOperator.TokenSequence list)- Overrides:
reduceExprin classorg.apache.calcite.sql.SqlSpecialOperator
-
unparse
public void unparse(org.apache.calcite.sql.SqlWriter writer, org.apache.calcite.sql.SqlCall call, int leftPrec, int rightPrec)- Overrides:
unparsein classorg.apache.calcite.sql.SqlOperator
-
getOperandCountRange
public org.apache.calcite.sql.SqlOperandCountRange getOperandCountRange()
- Overrides:
getOperandCountRangein classorg.apache.calcite.sql.SqlOperator
-
checkOperandTypes
public boolean checkOperandTypes(org.apache.calcite.sql.SqlCallBinding callBinding, boolean throwOnFailure)- Overrides:
checkOperandTypesin classorg.apache.calcite.sql.SqlOperator
-
getOperandTypeChecker
public org.apache.calcite.sql.type.SqlSingleOperandTypeChecker getOperandTypeChecker()
- Overrides:
getOperandTypeCheckerin classorg.apache.calcite.sql.SqlOperator
-
getAllowedSignatures
public String getAllowedSignatures(String name)
- Overrides:
getAllowedSignaturesin classorg.apache.calcite.sql.SqlOperator
-
inferReturnType
public org.apache.calcite.rel.type.RelDataType inferReturnType(org.apache.calcite.sql.SqlOperatorBinding opBinding)
- Overrides:
inferReturnTypein classorg.apache.calcite.sql.SqlOperator
-
-