Andrew Lamb created ARROW-11710:
-----------------------------------

             Summary: [Rust][DataFusion] Implement ExprRewriter to avoid tree 
traversal redundancy
                 Key: ARROW-11710
                 URL: https://issues.apache.org/jira/browse/ARROW-11710
             Project: Apache Arrow
          Issue Type: Sub-task
            Reporter: Andrew Lamb



The idea is to
1. Reduce the amount repetitions in optimizer rules to make them easier to 
implement

2. Reduce the amount of repetition to make it easier to see the actual logic 
(rather than having it intertwined with the code needed to do recursion)

2. Set the stage for a more general `PlanRewriter` that doesn't have  to clone 
its input, and  can modify take their input by value and consume them

Plan is to make an ExprRewriter, the mutable counterpart to `ExpressionVisitor` 
and demonstrates its usefulness by rewriting several expression transformation 
rewrite passes using it.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to