Interface Function

All Known Subinterfaces:
AggregateFunction, ImplementableAggFunction, ImplementableFunction, ScalarFunction, TableFunction, TableMacro
All Known Implementing Classes:
AggregateFunctionImpl, MaterializedViewTable.MaterializedViewTableMacro, MockCatalogReader.MockModifiableViewRelOptTable.MockViewTableMacro, ReflectiveFunctionBase, ScalarFunctionImpl, Smalls.SimpleTableMacro, SqlAdvisorGetHintsFunction, SqlAdvisorGetHintsFunction2, TableFunctionImpl, TableMacroImpl, ViewTableMacro

public interface Function
Named expression that accepts parameters and returns a result.

The application may occur at compile time (for a macro) or at run time (for a regular function). The result may be a relation, and so might any of the parameters.

Functions are registered in a Schema, and may be queried by name (Schema.getFunctions(String)) then overloads resolved based on parameter types.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the parameters of this function.
  • Method Details

    • getParameters

      List<FunctionParameter> getParameters()
      Returns the parameters of this function.
      Returns:
      Parameters; never null