/** * {@inheritDoc} */ public function enterNode(Node $node) { if ($node instanceof Variable) { $this->foundVariableAccesses[] = VariableAccess::fromVariableAndOperation($node, ...$this->lastVisitedNodes); } if ($node instanceof Node\Stmt\StaticVar) { $this->foundVariableAccesses[] = VariableAccess::fromStaticVariableAndOperations($node, ...$this->lastVisitedNodes); } $this->lastVisitedNodes[] = $node; }
public function testVariableAccessViaStaticVar() { self::assertInstanceOf(VariableAccess::class, VariableAccess::fromStaticVariableAndOperations(new Node\Stmt\StaticVar('foo'))); self::assertInstanceOf(VariableAccess::class, VariableAccess::fromStaticVariableAndOperations(new Node\Stmt\StaticVar('foo'), new Mul(new Variable('foo'), new Variable('bar')))); self::assertInstanceOf(VariableAccess::class, VariableAccess::fromStaticVariableAndOperations(new Node\Stmt\StaticVar('foo'), new Mul(new Variable('foo'), new Variable('bar')), new Mul(new Variable('foo'), new Variable('bar')))); }