bar;
}
CODE_SAMPLE
, <<<'CODE_SAMPLE'
function run($foo)
{
global ${$foo->bar};
}
CODE_SAMPLE
)]);
}
/**
* @return array>
*/
public function getNodeTypes() : array
{
return [Variable::class];
}
/**
* @param Variable $node
*/
public function refactor(Node $node) : ?Node
{
$nodeName = $node->name;
if (!$nodeName instanceof PropertyFetch && !$nodeName instanceof Variable) {
return null;
}
if ($node->getEndTokenPos() !== $nodeName->getEndTokenPos()) {
return null;
}
if ($nodeName instanceof PropertyFetch) {
return new Variable(new PropertyFetch($nodeName->var, $nodeName->name));
}
return new Variable(new Variable($nodeName->name));
}
}