PHPParser_NodeTraverser::traverseNode PHP Method

traverseNode() protected method

protected traverseNode ( PHPParser_Node $node )
$node PHPParser_Node
    protected function traverseNode(PHPParser_Node $node)
    {
        $node = $node;
        foreach ($node->getSubNodeNames() as $name) {
            $subNode =& $node->{$name};
            if (is_array($subNode)) {
                $subNode = $this->traverseArray($subNode);
            } elseif ($subNode instanceof PHPParser_Node) {
                foreach ($this->visitors as $visitor) {
                    if (null !== ($return = $visitor->enterNode($subNode))) {
                        $subNode = $return;
                    }
                }
                $subNode = $this->traverseNode($subNode);
                foreach ($this->visitors as $visitor) {
                    if (null !== ($return = $visitor->leaveNode($subNode))) {
                        $subNode = $return;
                    }
                }
            }
        }
        return $node;
    }