diff options
Diffstat (limited to 'ext/reflection/php_reflection.stub.php')
-rw-r--r-- | ext/reflection/php_reflection.stub.php | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/ext/reflection/php_reflection.stub.php b/ext/reflection/php_reflection.stub.php index 9287ae7e9c..e9815558d6 100644 --- a/ext/reflection/php_reflection.stub.php +++ b/ext/reflection/php_reflection.stub.php @@ -298,6 +298,8 @@ class ReflectionClass implements Reflector /** @return bool */ public function isTrait() {} + public function isEnum(): bool {} + /** @return bool */ public function isAbstract() {} @@ -479,6 +481,8 @@ class ReflectionClassConstant implements Reflector /** @return ReflectionAttribute[] */ public function getAttributes(?string $name = null, int $flags = 0): array {} + + public function isEnumCase(): bool {} } class ReflectionParameter implements Reflector @@ -683,3 +687,36 @@ final class ReflectionAttribute private function __construct() {} } + +final class ReflectionEnum extends ReflectionClass +{ + public function __construct(object|string $objectOrClass) {} + + public function hasCase(string $name): bool {} + + public function getCase(string $name): ReflectionEnumUnitCase {} + + /** @return ReflectionEnumUnitCase[] */ + public function getCases(): array {} + + public function isBacked(): bool {} + + public function getBackingType(): ReflectionType|null {} +} + +class ReflectionEnumUnitCase extends ReflectionClassConstant +{ + public function __construct(object|string $class, string $constant) {} + + public function getEnum(): ReflectionEnum {} + + /** @implementation-alias ReflectionClassConstant::getValue */ + public function getValue(): UnitEnum {} +} + +final class ReflectionEnumBackedCase extends ReflectionEnumUnitCase +{ + public function __construct(object|string $class, string $constant) {} + + public function getBackingValue(): int|string {} +} |