Class BridgingSqlAggFunction

java.lang.Object
org.apache.calcite.sql.SqlOperator
org.apache.calcite.sql.SqlFunction
org.apache.calcite.sql.SqlAggFunction
org.apache.flink.table.planner.functions.bridging.BridgingSqlAggFunction
All Implemented Interfaces:
org.apache.calcite.plan.Context, org.apache.calcite.schema.Wrapper

@Internal public final class BridgingSqlAggFunction extends org.apache.calcite.sql.SqlAggFunction
Bridges FunctionDefinition to Calcite's representation of an aggregating function (either a system or user-defined function).
  • Field Summary

    Fields inherited from class org.apache.calcite.sql.SqlOperator

    kind, MDX_PRECEDENCE, NL
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.flink.table.catalog.DataTypeFactory
     
    org.apache.flink.table.functions.FunctionDefinition
     
    org.apache.flink.table.catalog.ContextResolvedFunction
     
    FlinkTypeFactory
     
    org.apache.flink.table.types.inference.TypeInference
     
    boolean
     
    of(FlinkContext context, FlinkTypeFactory typeFactory, org.apache.flink.table.catalog.ContextResolvedFunction resolvedFunction)
    Creates an instance of a aggregate function during translation.
    of(org.apache.flink.table.catalog.DataTypeFactory dataTypeFactory, FlinkTypeFactory typeFactory, org.apache.calcite.sql.SqlKind kind, org.apache.flink.table.catalog.ContextResolvedFunction resolvedFunction, org.apache.flink.table.types.inference.TypeInference typeInference)
    Creates an instance of a aggregating function (either a system or user-defined function).

    Methods inherited from class org.apache.calcite.sql.SqlAggFunction

    allowsFilter, allowsNullTreatment, getDistinctOptionality, getParameterTypes, getReturnType, getRollup, isAggregator, isPercentile, isQuantifierAllowed, requiresGroupOrder, requiresOrder, requiresOver, unwrap, validateCall

    Methods inherited from class org.apache.calcite.sql.SqlFunction

    deriveType, getFunctionType, getNameAsId, getParamNames, getParamTypes, getSqlIdentifier, getSyntax, unparse, validateQuantifier

    Methods inherited from class org.apache.calcite.sql.SqlOperator

    acceptCall, acceptCall, adjustType, allowsFraming, argumentMustBeScalar, checkOperandCount, checkOperandTypes, constructArgNameList, constructArgTypeList, constructOperandList, createCall, createCall, createCall, createCall, createCall, createCall, createCall, deriveOperandType, equals, getAllowedSignatures, getAllowedSignatures, getKind, getLeftPrec, getMonotonicity, getMonotonicity, getName, getOperandCountRange, getOperandTypeChecker, getOperandTypeInference, getReturnTypeInference, getRightPrec, getSignatureTemplate, getStrongPolicyInference, hashCode, inferReturnType, inferReturnType, isDynamicFunction, isGroup, isGroupAuxiliary, isName, isSymmetrical, leftPrec, not, preValidateCall, requiresDecimalExpansion, reverse, rewriteCall, rightPrec, toString, unparseListClause, unparseListClause, validateOperands, validRexOperands

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.calcite.schema.Wrapper

    maybeUnwrap, unwrapOrThrow
  • Method Details

    • of

      public static BridgingSqlAggFunction of(org.apache.flink.table.catalog.DataTypeFactory dataTypeFactory, FlinkTypeFactory typeFactory, org.apache.calcite.sql.SqlKind kind, org.apache.flink.table.catalog.ContextResolvedFunction resolvedFunction, org.apache.flink.table.types.inference.TypeInference typeInference)
      Creates an instance of a aggregating function (either a system or user-defined function).
      Parameters:
      dataTypeFactory - used for creating DataType
      typeFactory - used for bridging to RelDataType
      kind - commonly used SQL standard function; use SqlKind.OTHER_FUNCTION if this function cannot be mapped to a common function kind.
      resolvedFunction - system or user-defined FunctionDefinition with context
      typeInference - type inference logic
    • of

      public static BridgingSqlAggFunction of(FlinkContext context, FlinkTypeFactory typeFactory, org.apache.flink.table.catalog.ContextResolvedFunction resolvedFunction)
      Creates an instance of a aggregate function during translation.
    • getDataTypeFactory

      public org.apache.flink.table.catalog.DataTypeFactory getDataTypeFactory()
    • getTypeFactory

      public FlinkTypeFactory getTypeFactory()
    • getResolvedFunction

      public org.apache.flink.table.catalog.ContextResolvedFunction getResolvedFunction()
    • getDefinition

      public org.apache.flink.table.functions.FunctionDefinition getDefinition()
    • getTypeInference

      public org.apache.flink.table.types.inference.TypeInference getTypeInference()
    • isDeterministic

      public boolean isDeterministic()
      Overrides:
      isDeterministic in class org.apache.calcite.sql.SqlOperator