Class BuiltInSpecializedFunction

java.lang.Object
org.apache.flink.table.runtime.functions.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)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.flink.table.functions.FunctionKind
     
    Set<org.apache.flink.table.functions.FunctionRequirement>
     
    org.apache.flink.table.types.inference.TypeInference
    getTypeInference(org.apache.flink.table.catalog.DataTypeFactory typeFactory)
     
    boolean
     

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface org.apache.flink.table.functions.FunctionDefinition

    supportsConstantFolding

    Methods inherited from interface org.apache.flink.table.functions.SpecializedFunction

    specialize
  • Constructor Details

    • BuiltInSpecializedFunction

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

    • 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