PHPStan\Rules\Classes\ExistingClassInInstanceOfRule::processNode PHP Method

processNode() public method

public processNode ( PhpParser\Node $node, Scope $scope ) : array
$node PhpParser\Node
$scope PHPStan\Analyser\Scope
return array
    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 [];
    }
ExistingClassInInstanceOfRule