forked from GNUsocial/gnu-social
		
	
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| namespace PhpParser;
 | |
| 
 | |
| interface NodeTraverserInterface
 | |
| {
 | |
|     /**
 | |
|      * 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.
 | |
|      */
 | |
|     const DONT_TRAVERSE_CHILDREN = 1;
 | |
| 
 | |
|     /**
 | |
|      * 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.
 | |
|      */
 | |
|     const REMOVE_NODE = false;
 | |
| 
 | |
|     /**
 | |
|      * Adds a visitor.
 | |
|      *
 | |
|      * @param NodeVisitor $visitor Visitor to add
 | |
|      */
 | |
|     function addVisitor(NodeVisitor $visitor);
 | |
| 
 | |
|     /**
 | |
|      * Removes an added visitor.
 | |
|      *
 | |
|      * @param NodeVisitor $visitor
 | |
|      */
 | |
|     function removeVisitor(NodeVisitor $visitor);
 | |
| 
 | |
|     /**
 | |
|      * Traverses an array of nodes using the registered visitors.
 | |
|      *
 | |
|      * @param Node[] $nodes Array of nodes
 | |
|      *
 | |
|      * @return Node[] Traversed array of nodes
 | |
|      */
 | |
|     function traverse(array $nodes);
 | |
| }
 | |
| 
 |