[ https://issues.apache.org/jira/browse/CALCITE-4038?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Julian Hyde resolved CALCITE-4038. ---------------------------------- Fix Version/s: 1.24.0 Resolution: Fixed Fixed in [59d6eb85|https://github.com/apache/calcite/commit/59d6eb852676ab5d77eccd63f488c9f121804d5d]. > Refactor RexVisitor, RexBiVisitor, RelOptUtil.InputFinder > --------------------------------------------------------- > > Key: CALCITE-4038 > URL: https://issues.apache.org/jira/browse/CALCITE-4038 > Project: Calcite > Issue Type: Bug > Reporter: Julian Hyde > Assignee: Julian Hyde > Priority: Major > Fix For: 1.24.0 > > > 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}}. -- This message was sent by Atlassian Jira (v8.3.4#803005)