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

Refactor RexVisitor, RexBiVisitor, RelOptUtil.InputFinder

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.24.0
    • None
    • None

    Description

      Various improvements to RexVisitor, RexBiVisitor, RelOptUtil.InputFinder  classes.

      1. Make mutable field RelOptUtil.InputFinder.inputBitSet private. The field still exists, public and deprecated, but it shadows a new private field. Rather than calling InputFinder.inputBitSet.build() you should now call InputFinder.build().

      2. In RexVisitor and RexBiVisitor add methods visitList and visitEach (the former returns a list, and the latter returns void).

      3. Deprecate RexShuttle.apply in favor of visitList.

      4. Add RexWindowBound.accept(RexBiVisitor).

      5. For RexBiVisitor<X, Integer> add a method visitEachIndexed, the index passed as the 'payload' argument.

      6. Add abstract implementations of RexBiVisitor: RexUnaryBiVisitor and RexBiVisitorImpl.

      Attachments

        Activity

          People

            julianhyde Julian Hyde
            julianhyde Julian Hyde
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: