3 namespace Drupal\drupalmoduleupgrader\Utility\Filter;
5 use Pharborist\Functions\FunctionCallNode;
7 use Pharborist\Variables\VariableNode;
10 * Filters for function calls which are passed a particular argument.
12 class FunctionCallArgumentFilter {
19 public function __construct($variable) {
20 $this->variable = $variable;
26 public function __invoke(Node $node) {
27 if ($node instanceof FunctionCallNode) {
28 return (boolean) $node->getArgumentList()->children([$this, 'hasArgument'])->count();
36 public function hasArgument(Node $argument) {
37 return ($argument instanceof VariableNode && $argument->getName() == $this->variable);