Re: Should there be a `get_declared_enums()` function ?
| From: | Alexandru Pătrănescu | Date: | Fri, 16 Aug 2024 10:12:34 +0000 |
| Subject: | Re: Should there be a `get_declared_enums()` function ? | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-124972@lists.php.net to get a copy of this message | ||
Hey Juliette,
> Should a
get_declared_enums() function be added ?
>
Yes
And should the get_declared_classes() function be adjusted to exclude
> enums ?
>
No
You listed these entities: classes, interfaces, traits and enums.
But while there is a clear differentiation between what is considered a
class, an interface or a trait, enums are just a subtype of classes.
"all enums are classes, but not all classes are enums."
So for keeping this valid, get_declared_classes() should return all
classes (including enums).
While get_declared_enums() should return all enums.
If one really wants all classes except enums, they could use `array_diff(
get_declared_classes(), get_declared_enums()`.
This would avoid the backward compatibility issues that Larry also
mentioned.
Regards,
Alex