(scx: &StatementContext, node: &mut N)
| 29 | use crate::{ORDINALITY_COL_NAME, normalize}; |
| 30 | |
| 31 | pub(crate) fn transform<N>(scx: &StatementContext, node: &mut N) -> Result<(), PlanError> |
| 32 | where |
| 33 | N: for<'a> VisitMutNode<'a, Aug>, |
| 34 | { |
| 35 | let mut func_rewriter = FuncRewriter::new(scx); |
| 36 | node.visit_mut(&mut func_rewriter); |
| 37 | func_rewriter.status?; |
| 38 | |
| 39 | let mut desugarer = Desugarer::new(scx); |
| 40 | node.visit_mut(&mut desugarer); |
| 41 | desugarer.status |
| 42 | } |
| 43 | |
| 44 | // Transforms various functions to forms that are more easily handled by the |
| 45 | // planner. |