code: public static function register(array $aliases)
      {
          if (!$aliases) {
              return;
          }
  
          if (!isset(self::$autoloadFn)) {
              $classAliases = &self::$aliases;
              self::$autoloadFn = function ($className) use (&$classAliases) {
                  if (isset($classAliases[$className])) {
                      if (strtolower($classAliases[$className]) === strtolower($className)) {
                          throw new \LogicException("Class alias is referencing the alias itself");
                      }
                      $facadeClass = $classAliases[$className];
                      class_alias($facadeClass, $className);
                  }
              };
  
              spl_autoload_register(self::$autoloadFn);
          }
  
          self::$aliases = array_merge(self::$aliases, $aliases);
      }
docs: Registers a class autoloader which will create the given class aliases on demand.
  @param array $aliases Aliased classes. The alias as key, and the facade class as value