Class FlinkTypeSystem

java.lang.Object
org.apache.calcite.rel.type.RelDataTypeSystemImpl
org.apache.flink.table.planner.calcite.FlinkTypeSystem
All Implemented Interfaces:
org.apache.calcite.rel.type.RelDataTypeSystem

@Internal public class FlinkTypeSystem extends org.apache.calcite.rel.type.RelDataTypeSystemImpl
Custom type system for Flink.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final org.apache.flink.table.types.logical.DecimalType
     
    static final FlinkTypeSystem
     

    Fields inherited from interface org.apache.calcite.rel.type.RelDataTypeSystem

    DEFAULT
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.calcite.rel.type.RelDataType
    deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argRelDataType)
     
    org.apache.calcite.rel.type.RelDataType
    deriveDecimalDivideType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)
     
    org.apache.calcite.rel.type.RelDataType
    deriveDecimalModType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)
     
    org.apache.calcite.rel.type.RelDataType
    deriveDecimalMultiplyType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)
     
    org.apache.calcite.rel.type.RelDataType
    deriveDecimalPlusType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)
     
    org.apache.calcite.rel.type.RelDataType
    deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argRelDataType)
     
    int
    getDefaultPrecision(org.apache.calcite.sql.type.SqlTypeName typeName)
     
    int
     
    int
     
    int
    getMaxPrecision(org.apache.calcite.sql.type.SqlTypeName typeName)
     
    boolean
     

    Methods inherited from class org.apache.calcite.rel.type.RelDataTypeSystemImpl

    deriveCovarType, deriveFractionalRankType, deriveRankType, getLiteral, getMaxScale, getNumTypeRadix, isAutoincrement, isCaseSensitive, isSchemaCaseSensitive

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.apache.calcite.rel.type.RelDataTypeSystem

    deriveTimeFrameSet, shouldUseDoubleMultiplication
  • Field Details

    • INSTANCE

      public static final FlinkTypeSystem INSTANCE
    • DECIMAL_SYSTEM_DEFAULT

      public static final org.apache.flink.table.types.logical.DecimalType DECIMAL_SYSTEM_DEFAULT
  • Method Details

    • getMaxNumericPrecision

      public int getMaxNumericPrecision()
      Specified by:
      getMaxNumericPrecision in interface org.apache.calcite.rel.type.RelDataTypeSystem
      Overrides:
      getMaxNumericPrecision in class org.apache.calcite.rel.type.RelDataTypeSystemImpl
    • getMaxNumericScale

      public int getMaxNumericScale()
      Specified by:
      getMaxNumericScale in interface org.apache.calcite.rel.type.RelDataTypeSystem
      Overrides:
      getMaxNumericScale in class org.apache.calcite.rel.type.RelDataTypeSystemImpl
    • getDefaultPrecision

      public int getDefaultPrecision(org.apache.calcite.sql.type.SqlTypeName typeName)
      Specified by:
      getDefaultPrecision in interface org.apache.calcite.rel.type.RelDataTypeSystem
      Overrides:
      getDefaultPrecision in class org.apache.calcite.rel.type.RelDataTypeSystemImpl
    • getMaxPrecision

      public int getMaxPrecision(org.apache.calcite.sql.type.SqlTypeName typeName)
      Specified by:
      getMaxPrecision in interface org.apache.calcite.rel.type.RelDataTypeSystem
      Overrides:
      getMaxPrecision in class org.apache.calcite.rel.type.RelDataTypeSystemImpl
    • shouldConvertRaggedUnionTypesToVarying

      public boolean shouldConvertRaggedUnionTypesToVarying()
      Specified by:
      shouldConvertRaggedUnionTypesToVarying in interface org.apache.calcite.rel.type.RelDataTypeSystem
      Overrides:
      shouldConvertRaggedUnionTypesToVarying in class org.apache.calcite.rel.type.RelDataTypeSystemImpl
    • deriveAvgAggType

      public org.apache.calcite.rel.type.RelDataType deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argRelDataType)
      Specified by:
      deriveAvgAggType in interface org.apache.calcite.rel.type.RelDataTypeSystem
      Overrides:
      deriveAvgAggType in class org.apache.calcite.rel.type.RelDataTypeSystemImpl
    • deriveSumType

      public org.apache.calcite.rel.type.RelDataType deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argRelDataType)
      Specified by:
      deriveSumType in interface org.apache.calcite.rel.type.RelDataTypeSystem
      Overrides:
      deriveSumType in class org.apache.calcite.rel.type.RelDataTypeSystemImpl
    • deriveDecimalPlusType

      public org.apache.calcite.rel.type.RelDataType deriveDecimalPlusType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)
    • deriveDecimalModType

      public org.apache.calcite.rel.type.RelDataType deriveDecimalModType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)
    • deriveDecimalDivideType

      public org.apache.calcite.rel.type.RelDataType deriveDecimalDivideType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)
    • deriveDecimalMultiplyType

      public org.apache.calcite.rel.type.RelDataType deriveDecimalMultiplyType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType type1, org.apache.calcite.rel.type.RelDataType type2)