NodeTraverser.php 492 B

123456789101112131415161718192021
  1. <?php
  2. namespace ClassPreloader\Parser;
  3. /**
  4. * Allows a filename to be set when visiting
  5. */
  6. class NodeTraverser extends \PHPParser_NodeTraverser
  7. {
  8. public function traverseFile(array $nodes, $filename)
  9. {
  10. // Set the correct state on each visitor
  11. foreach ($this->visitors as $visitor) {
  12. if ($visitor instanceof AbstractNodeVisitor) {
  13. $visitor->setFilename($filename);
  14. }
  15. }
  16. return $this->traverse($nodes);
  17. }
  18. }