12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- <?php
- namespace Doctrine\Common\Annotations;
- use function array_key_exists;
- use function class_exists;
- final class AnnotationRegistry
- {
- /**
- * An array of classes which cannot be found
- *
- * @var null[] indexed by class name
- */
- private static $failedToAutoload = [];
- public static function reset(): void
- {
- self::$failedToAutoload = [];
- }
- /**
- * Autoloads an annotation class silently.
- */
- public static function loadAnnotationClass(string $class): bool
- {
- if (class_exists($class, false)) {
- return true;
- }
- if (array_key_exists($class, self::$failedToAutoload)) {
- return false;
- }
- if (class_exists($class)) {
- return true;
- }
- self::$failedToAutoload[$class] = null;
- return false;
- }
- }
|