Class SymbolUtil

java.lang.Object
org.apache.flink.table.planner.typeutils.SymbolUtil

@Internal public final class SymbolUtil extends Object
Utilities to map between symbols from both Calcite and Flink. It also defines a SymbolUtil.SerializableSymbol format independent of concrete implementation classes.
  • Method Details

    • commonToCalcite

      public static Enum<?> commonToCalcite(Enum<?> commonSymbol)
      Converts from a common to a Calcite symbol. The common symbol can be a publicly exposed one such as TimeIntervalUnit or internal one such as DateTimeUtils.TimeUnitRange.
    • calciteToCommon

      public static Enum<?> calciteToCommon(Enum<?> calciteSymbol, boolean preferInternal)
      Converts from Calcite to a common symbol. The common symbol can be a publicly exposed one such as TimeIntervalUnit or internal one such as DateTimeUtils.TimeUnitRange. Since the common symbol is optional, the input is returned as a fallback.
    • calciteToSerializable

      public static SymbolUtil.SerializableSymbol calciteToSerializable(Enum<?> calciteSymbol)
    • serializableToCalcite

      public static Enum<?> serializableToCalcite(SymbolUtil.SerializableSymbol serializableSymbol)
    • serializableToCalcite

      public static <T extends Enum<T>> T serializableToCalcite(Class<T> calciteSymbolClass, String value)