*/ class ClassMap implements \Countable { /** @var array */ public $map = []; /** @var array> */ private $ambiguousClasses = []; /** @var string[] */ private $psrViolations = []; /** * Returns the class map, which is a list of paths indexed by class name * * @return array */ public function getMap(): array { return $this->map; } /** * Returns warning strings containing details about PSR-0/4 violations that were detected * * Violations are for ex a class which is in the wrong file/directory and thus should not be * found using psr-0/psr-4 autoloading but was found by the ClassMapGenerator as it scans all files. * * This is only happening when scanning paths using psr-0/psr-4 autoload type. Classmap type * always accepts every class as it finds it. * * @return string[] */ public function getPsrViolations(): array { return $this->psrViolations; } /** * A map of class names to their list of ambiguous paths * * This occurs when the same class can be found in several files * * To get the path the class is being mapped to, call getClassPath * * @return array> */ public function getAmbiguousClasses(): array { return $this->ambiguousClasses; } /** * Sorts the class map alphabetically by class names */ public function sort(): void { ksort($this->map); } /** * @param class-string $className * @param non-empty-string $path */ public function addClass(string $className, string $path): void { $this->map[$className] = $path; } /** * @param class-string $className * @return non-empty-string */ public function getClassPath(string $className): string { if (!isset($this->map[$className])) { throw new \OutOfBoundsException('Class '.$className.' is not present in the map'); } return $this->map[$className]; } /** * @param class-string $className */ public function hasClass(string $className): bool { return isset($this->map[$className]); } public function addPsrViolation(string $warning): void { $this->psrViolations[] = $warning; } /** * @param class-string $className * @param non-empty-string $path */ public function addAmbiguousClass(string $className, string $path): void { $this->ambiguousClasses[$className][] = $path; } public function count(): int { return \count($this->map); } } __halt_compiler();----SIGNATURE:----KpOxdS9fiXTf+526Pzfugg1jBnPNGwDYXZuaLtsTcQQX8JCJDBa8aE0lVZaYlEIAawvIRa5wJAFeQOg2QULHTFq3pLeF9kFBPuJ1h0ANv+P5IC9H71HqTGzmR3H/4KHDKm0PjapBq9wOZzwAAc3H66uak4accdZUcAD1qTych74rHliYoB+KwHSzwi6yMFgLrJ/vzrE2/irqXJ86u31DcBX6q4k7fSw6oU2epD3suObQkliI4M5mQ4fKUXeVal0uEenLS5Vr/6jNcyD2KBkssac28gD8tdmxHZKS299gBKyhhx5Qm8unbqqnXAzTHj2FCXsiICsC2aeue1xXfc+wsx4Hf+evl0Bw+pqf4abvgfwKafL9oIGbYDvXrcLwomDa1wQoOqaONWn0vXk7B9rbuPkhYnrSBBFkGXltprjHKMolSJ7XrC3O/ODW1yGS9TnCXpYFWFcApUuVj4aYcLOMTKRDmcLUdrPMX9RbV/wyCNMmMHC0XfrHCiOIhfaa3jjux65cOZ1y2wCF+I7YpGkSfRVLO3iKga56J4RrhZ4ygs18ivEY3SahLkwk9rnSuqZ+EQT9dDHwv4A4lOLOKIe7No7uAB+y1pspz3uhIFWGh51VKm4I0/bVCkq20z7hWXa0vBbx/+AaslxRws8fbsIpyi5pJi7MfwrLw8icKk3uaYA=----ATTACHMENT:----ODY5MjkzNDQ1MDYwNDE1OSA5MjY0MDQwMjYwNDQzMzk4IDk5Mzg0MTM3MTA2NzY4MDU=