public function processNode(Node $node, Scope $scope) : array
{
$class = $node->class;
if (!$class instanceof \PhpParser\Node\Name) {
return [];
}
$name = (string) $class;
if ($name === 'self' || $name === 'static') {
if ($scope->getClass() === null && !$scope->isInAnonymousClass()) {
return [sprintf('Using %s outside of class scope.', $name)];
}
if ($name === 'static') {
return [];
}
if ($name === 'self') {
$name = $scope->getClass();
}
}
if (!$this->broker->hasClass($name)) {
return [sprintf('Class %s not found.', $name)];
}
return [];
}