CloneableInstantiable
ImplementsPhpParser\NodeTraverserInterface
Constants
public PhpParser\NodeTraverser::DONT_TRAVERSE_CHILDREN = 1
 

If NodeVisitor::enterNode() returns DONT_TRAVERSE_CHILDREN, child nodes
of the current node will not be traversed for any visitors.

For subsequent visitors enterNode() will still be called on the current
node and leaveNode() will also be invoked for the current node.

public PhpParser\NodeTraverser::DONT_TRAVERSE_CURRENT_AND_CHILDREN = 4
 

If NodeVisitor::enterNode() returns DONT_TRAVERSE_CURRENT_AND_CHILDREN, child nodes
of the current node will not be traversed for any visitors.

For subsequent visitors enterNode() will not be called as well.
leaveNode() will be invoked for visitors that has enterNode() method invoked.

public PhpParser\NodeTraverser::REMOVE_NODE = 3
 

If NodeVisitor::leaveNode() returns REMOVE_NODE for a node that occurs
in an array, it will be removed from the array.

For subsequent visitors leaveNode() will still be invoked for the
removed node.

public PhpParser\NodeTraverser::STOP_TRAVERSAL = 2
 

If NodeVisitor::enterNode() or NodeVisitor::leaveNode() returns
STOP_TRAVERSAL, traversal is aborted.

The afterTraverse() method will still be invoked.

Methods
public __construct()
public addVisitor(PhpParser\NodeVisitor $visitor)
 

Adds a visitor.

    public removeVisitor(PhpParser\NodeVisitor $visitor)
     

    Removes an added visitor.

      public traverse(array $nodes) : array
       

      Traverses an array of nodes using the registered visitors.

      Properties
      protected $stopTraversal
       
      • var bool Whether traversal should be stopped
      protected $visitors
       
      Methods
      protected traverseArray(array $nodes) : array
       

      Recursively traverse array (usually of nodes).

      • return array Result of traversal (may be original array or changed one)
      protected traverseNode(PhpParser\Node $node) : PhpParser\Node
       

      Recursively traverse a node.

      • return PhpParser\Node Result of traversal (may be original node or new one)
      Methods
      private ensureReplacementReasonable( $old, $new)
      © 2020 Bruce Wells
      Search Namespaces \ Classes
      ConfigurationNumbers (0-9.) only