fn push_all_real_nodes(&mut self, node: &'b VNode<'b>) -> usize {
        match node {
            VNode::Text(_) | VNode::Placeholder(_) | VNode::Element(_) => {
                self.mutations.push_root(node.mounted_id());
                1
            }

            VNode::Fragment(frag) => {
                let mut added = 0;
                for child in frag.children {
                    added += self.push_all_real_nodes(child);
                }
                added
            }

            VNode::Component(c) => {
                let scope_id = c.scope.get().unwrap();
                let root = self.scopes.root_node(scope_id);
                self.push_all_real_nodes(root)
            }
        }
    }
// recursively push all the nodes of a tree onto the stack and return how many are there
recursively push all the nodes of a tree onto the stack and return how many are there
recursively push all the nodes of a tree onto the stack and return how many are there
fn push_all_real_nodes(&mut self, node: &'b VNode<'b>) -> usize {
        match node {
            VNode::Text(_) | VNode::Placeholder(_) | VNode::Element(_) => {
                self.mutations.push_root(node.mounted_id());
                1
            }
            VNode::Fragment(frag) => {
                let mut added = 0;
                for child in frag.children {
                    added += self.push_all_real_nodes(child);
                }
                added
            }
            VNode::Component(c) => {
                let scope_id = c.scope.get().unwrap();
                let root = self.scopes.root_node(scope_id);
                self.push_all_real_nodes(root)
            }
        }
    }
fn push_all_real_nodes ( & mut self , node : & ' b VNode < ' b > ) -> usize { match node { VNode :: Text ( _ ) | VNode :: Placeholder ( _ ) | VNode :: Element ( _ ) => { self . mutations . push_root ( node . mounted_id ( ) ) ; 1 } VNode :: Fragment ( frag ) => { let mut added = 0 ; for child in frag . children { added += self . push_all_real_nodes ( child ) ; } added } VNode :: Component ( c ) => { let scope_id = c . scope . get ( ) . unwrap ( ) ; let root = self . scopes . root_node ( scope_id ) ; self . push_all_real_nodes ( root ) } } }
recursively push all the nodes of a tree onto the stack and return how many are there
recursively push all the nodes of a tree onto the stack and return how many are there
&mut self
node
&'b VNode<'b>
&mut self
node
&'b VNode<'b>