MCPcopy Create free account
hub / github.com/apache/datafusion / visit_with_subqueries

Method visit_with_subqueries

datafusion/expr/src/logical_plan/tree_node.rs:679–692  ·  view source on GitHub ↗
(
        &self,
        visitor: &mut V,
    )

Source from the content-addressed store, hash-verified

677 /// may appear in expressions such as `IN (SELECT ...)`.
678 #[cfg_attr(feature = "recursive_protection", recursive::recursive)]
679 pub fn visit_with_subqueries<V: for<'n> TreeNodeVisitor<'n, Node = Self>>(
680 &self,
681 visitor: &mut V,
682 ) -> Result<TreeNodeRecursion> {
683 visitor
684 .f_down(self)?
685 .visit_children(|| {
686 self.apply_subqueries(|c| c.visit_with_subqueries(visitor))?
687 .visit_sibling(|| {
688 self.apply_children(|c| c.visit_with_subqueries(visitor))
689 })
690 })?
691 .visit_parent(|| visitor.f_up(self))
692 }
693
694 /// Similarly to [`Self::rewrite`], rewrites this node and its inputs using `f`,
695 /// including subqueries that may appear in expressions such as `IN (SELECT

Callers 8

fmtMethod · 0.80
visit_orderFunction · 0.80
early_stopping_pre_visitFunction · 0.80
error_pre_visitFunction · 0.80
error_post_visitFunction · 0.80
verify_planMethod · 0.80

Calls 7

visit_parentMethod · 0.80
visit_childrenMethod · 0.80
visit_siblingMethod · 0.80
apply_subqueriesMethod · 0.80
f_downMethod · 0.45
apply_childrenMethod · 0.45
f_upMethod · 0.45

Tested by 6

visit_orderFunction · 0.64
early_stopping_pre_visitFunction · 0.64
error_pre_visitFunction · 0.64
error_post_visitFunction · 0.64