HaoYang670 opened a new issue, #4917:
URL: https://github.com/apache/arrow-datafusion/issues/4917
Currently, we use `None` to represent an optimizing rule to be recursively
applied to its children.
And we use `Some(TopDown)` and `Some(BottomUp)` to represent a rule can be
directly applied to the child node.
The `None` usage can be directly replaced by introducing a new sum type
`ApplyOrder::Recursive`.
This can
- remove the usage of nested pattern matching,
- better comment the code ,
- and help the rust compiler to better optimize the code.
This is a follow-up of #4618.
**Describe the solution you'd like**
```
pub enum ApplyOrder {
/// ...
TopDown,
/// ...
BottomUp,
/// ...
Recursive,
}
```
**Describe alternatives you've considered**
We could not do this.
**Additional context**
Add any other context or screenshots about the feature request here.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]