Get total number of [`LogicalPlan`]s in the plan.
(plan: &LogicalPlan)
| 72 | |
| 73 | /// Get total number of [`LogicalPlan`]s in the plan. |
| 74 | fn get_node_number(plan: &LogicalPlan) -> NonZeroUsize { |
| 75 | let mut node_number = 0; |
| 76 | plan.apply_with_subqueries(|_plan| { |
| 77 | node_number += 1; |
| 78 | Ok(TreeNodeRecursion::Continue) |
| 79 | }) |
| 80 | // Closure always return Ok |
| 81 | .unwrap(); |
| 82 | // Visitor must have at least visited the root, |
| 83 | // so v.node_number is at least 1. |
| 84 | NonZeroUsize::new(node_number).unwrap() |
| 85 | } |
| 86 | |
| 87 | #[cfg(test)] |
| 88 | mod tests { |
no test coverage detected
searching dependent graphs…