Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. DebugClassLoader.php

function DebugClassLoader::checkClasses

File

vendor/symfony/error-handler/DebugClassLoader.php, line 229

Class

DebugClassLoader
Autoloader checking if the class is really defined in the file found.

Namespace

Symfony\Component\ErrorHandler

Code

public static function checkClasses() : bool {
    if (!\is_array($functions = spl_autoload_functions())) {
        return false;
    }
    $loader = null;
    foreach ($functions as $function) {
        if (\is_array($function) && $function[0] instanceof self) {
            $loader = $function[0];
            break;
        }
    }
    if (null === $loader) {
        return false;
    }
    static $offsets = [
        'get_declared_interfaces' => 0,
        'get_declared_traits' => 0,
        'get_declared_classes' => 0,
    ];
    foreach ($offsets as $getSymbols => $i) {
        $symbols = $getSymbols();
        for (; $i < \count($symbols); ++$i) {
            if (!is_subclass_of($symbols[$i], MockObject::class) && !is_subclass_of($symbols[$i], ProphecySubjectInterface::class) && !is_subclass_of($symbols[$i], Proxy::class) && !is_subclass_of($symbols[$i], ProxyInterface::class) && !is_subclass_of($symbols[$i], LazyObjectInterface::class) && !is_subclass_of($symbols[$i], LegacyProxy::class) && !is_subclass_of($symbols[$i], MockInterface::class) && !is_subclass_of($symbols[$i], IMock::class)) {
                $loader->checkClass($symbols[$i]);
            }
        }
        $offsets[$getSymbols] = $i;
    }
    return true;
}
RSS feed
Powered by Drupal