mirror of
https://github.com/rectorphp/rector.git
synced 2024-05-31 00:10:51 +00:00
93080b5520
b7a5fefedc
[DeadCode] Add RemoveUselessReturnExprInConstructRector (#5158)
30 lines
800 B
PHP
30 lines
800 B
PHP
<?php
|
|
|
|
declare (strict_types=1);
|
|
namespace Rector\PhpDocParser\NodeTraverser;
|
|
|
|
use PhpParser\Node;
|
|
use PhpParser\NodeTraverser;
|
|
use Rector\PhpDocParser\NodeVisitor\CallableNodeVisitor;
|
|
/**
|
|
* @api
|
|
*/
|
|
final class SimpleCallableNodeTraverser
|
|
{
|
|
/**
|
|
* @param callable(Node): (int|Node|null|Node[]) $callable
|
|
* @param Node|Node[]|null $node
|
|
*/
|
|
public function traverseNodesWithCallable($node, callable $callable) : void
|
|
{
|
|
if ($node === null || $node === []) {
|
|
return;
|
|
}
|
|
$nodeTraverser = new NodeTraverser();
|
|
$callableNodeVisitor = new CallableNodeVisitor($callable);
|
|
$nodeTraverser->addVisitor($callableNodeVisitor);
|
|
$nodes = $node instanceof Node ? [$node] : $node;
|
|
$nodeTraverser->traverse($nodes);
|
|
}
|
|
}
|