Class ProcedureDefinition
- java.lang.Object
-
- org.apache.flink.table.procedures.ProcedureDefinition
-
- All Implemented Interfaces:
FunctionDefinition
@Internal public class ProcedureDefinition extends Object implements FunctionDefinition
Definition of a procedure. We consider procedure as a kind of function, so make it implementFunctionDefinition
.
-
-
Field Summary
Fields Modifier and Type Field Description static String
PROCEDURE_CALL
the name for the methods to be involved in the procedure.
-
Constructor Summary
Constructors Constructor Description ProcedureDefinition(Procedure procedure)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FunctionKind
getKind()
Returns the kind of function this definition describes.TypeInference
getTypeInference(DataTypeFactory typeFactory)
Returns the logic for performing type inference of a call to this function definition.-
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
getRequirements, isDeterministic, supportsConstantFolding
-
-
-
-
Field Detail
-
PROCEDURE_CALL
public static final String PROCEDURE_CALL
the name for the methods to be involved in the procedure.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ProcedureDefinition
public ProcedureDefinition(Procedure procedure)
-
-
Method Detail
-
getKind
public FunctionKind getKind()
Description copied from interface:FunctionDefinition
Returns the kind of function this definition describes.- Specified by:
getKind
in interfaceFunctionDefinition
-
getTypeInference
public TypeInference getTypeInference(DataTypeFactory typeFactory)
Description copied from interface:FunctionDefinition
Returns the logic for performing type inference of a call to this function definition.The type inference process is responsible for inferring unknown types of input arguments, validating input arguments, and producing result types. The type inference process happens independent of a function body. The output of the type inference is used to search for a corresponding runtime implementation.
Instances of type inference can be created by using
TypeInference.newBuilder()
.See
BuiltInFunctionDefinitions
for concrete usage examples.- Specified by:
getTypeInference
in interfaceFunctionDefinition
-
-