Class BuiltInSpecializedFunction

  • All Implemented Interfaces:
    org.apache.flink.table.functions.FunctionDefinition, org.apache.flink.table.functions.SpecializedFunction
    Direct Known Subclasses:
    UnnestRowsFunction

    @Internal
    public abstract class BuiltInSpecializedFunction
    extends Object
    implements org.apache.flink.table.functions.SpecializedFunction
    Base class for built-in functions that need another level of specialization via BuiltInFunctionDefinition.specialize(SpecializedContext).

    Subclasses can create a specific UDF runtime implementation targeted to the given (fully known) arguments and derived output type. Subclasses must provide a default constructor.

    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.apache.flink.table.functions.SpecializedFunction

        org.apache.flink.table.functions.SpecializedFunction.ExpressionEvaluator, org.apache.flink.table.functions.SpecializedFunction.ExpressionEvaluatorFactory, org.apache.flink.table.functions.SpecializedFunction.SpecializedContext
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected BuiltInSpecializedFunction​(org.apache.flink.table.functions.BuiltInFunctionDefinition definition)  
    • Constructor Detail

      • BuiltInSpecializedFunction

        protected BuiltInSpecializedFunction​(org.apache.flink.table.functions.BuiltInFunctionDefinition definition)
    • Method Detail

      • getKind

        public org.apache.flink.table.functions.FunctionKind getKind()
        Specified by:
        getKind in interface org.apache.flink.table.functions.FunctionDefinition
      • getTypeInference

        public org.apache.flink.table.types.inference.TypeInference getTypeInference​(org.apache.flink.table.catalog.DataTypeFactory typeFactory)
        Specified by:
        getTypeInference in interface org.apache.flink.table.functions.FunctionDefinition
      • getRequirements

        public Set<org.apache.flink.table.functions.FunctionRequirement> getRequirements()
        Specified by:
        getRequirements in interface org.apache.flink.table.functions.FunctionDefinition
      • isDeterministic

        public boolean isDeterministic()
        Specified by:
        isDeterministic in interface org.apache.flink.table.functions.FunctionDefinition