INodePtr TreeBuilder::build(Scanner *scanner) { m_scanner = scanner; m_root = INodePtr(new StmtGroup); m_root->visit(*this); return m_root; }
void Node::removeChildNode(const INodePtr& node) { // Remove the node from the TraversableNodeSet, this triggers an // Node::onChildRemoved() event _children.erase(node); // Clear out the parent, this is not done in onChildRemoved(). node->setParent(INodePtr()); }