<?PHP
declare(strict_types = 1);
ini_set( 'error_log', '/dev/stdout' );

/**
 * Autoloader for musdb.
 *
 * @param string $className Name of the class to load.
 *
 * @return void
 */
\spl_autoload_register(function(string $className):void {

    // Try using class map as defined through /scripts/buildClassMap.php

    foreach (array_merge([__DIR__ . '/../tests', __DIR__ . '/../src', __DIR__ . '/../exceptions', __DIR__ . '/../src/testing', __DIR__ . '/../../MDErrorReporter', __DIR__ . '/../../MDErrorReporter/exceptions', __DIR__ . '/../../MDErrorReporter/exceptions/generic', __DIR__ . '/../../MDErrorReporter/exceptions/updates', __DIR__ . '/../../MDErrorReporter/exceptions/page']) as $classDir) {

        if (\file_exists("$classDir/$className.php")) {
            include "$classDir/$className.php";
            return;
        }

    }
});