On 16.08.2024 at 17:11, Nicolas Grekas wrote: >> Should a `get_declared_enums()` function be added ? >> >> Here we go: >> >> function get_declared_enums() { >> $enums = []; >> $exts = get_loaded_extensions(false); >> foreach ($exts as $ext) { >> $re = new ReflectionExtension($ext); >> $classes = $re->getClasses(); >> foreach ($classes as $class) { >> if ($class->isEnum()) { >> $enums[] = $class->name; >> } >> } >> } >> return $enums; >> } > > And here is a one liner: > > function get_declared_enums() { > return array_filter(get_declared_classes(), 'enum_exists'); > }
Nice! Are you suggesting that there is no need for get_declared_enums() in the core, since it can be implemented in userland with a single function call? If so, I still would argue that it makes sense to implement the function in the core for (a) consistency, and (b) performance reasons. Cheers, Christoph