Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-180

Common base class for TableFunction, ScalarFunction

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      Currently `ScalarFunction` is a sub-class of `TableFunction`. This was convenient, because `Schema` has a way to declare table functions. But actually we need a base class, `Function`. This would cause breaking changes to `Schema` APIs:

      ```java
      Collection<TableFunction> getTableFunctions(String name);
      Set<String> getTableFunctionNames();
      ```

      All functions have zero or more parameters. Table functions additionally have a row type, and have an `apply` method, called at query prepare time, that converts them to a Table.

      ---------------- Imported from GitHub ----------------
      Url: https://github.com/julianhyde/optiq/issues/180
      Created by: julianhyde
      Labels: enhancement,
      Created at: Wed Mar 12 20:24:09 CET 2014
      State: closed

        Activity

        There are no comments yet on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            github-import GitHub Import
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development