Code Duplication    Length = 13-14 lines in 2 locations

src/Bridge/Symfony/VarDumper/Caster/EnumCaster.php 1 location

@@ 27-39 (lines=13) @@
24
        $value = $enum->getValue();
25
        $r = new \ReflectionClass($enum);
26
27
        $constants = array_filter($r->getConstants(), static function (string $k) use ($r, $enum) {
28
            if (PHP_VERSION_ID >= 70100) {
29
                // ReflectionClass::getReflectionConstant() is only available since PHP 7.1
30
                $rConstant = $r->getReflectionConstant($k);
31
                $public = $rConstant->isPublic();
32
                $value = $rConstant->getValue();
33
            } else {
34
                $public = true;
35
                $value = \constant("{$r->getName()}::$k");
36
            }
37
            // Only keep public constants, for which value matches enumerable values set:
38
            return $public && $enum::accepts($value);
39
        }, ARRAY_FILTER_USE_KEY);
40
41
        $rConstants = array_flip($constants);
42

src/JsDumper/JsDumper.php 1 location

@@ 274-287 (lines=14) @@
271
        $r = new \ReflectionClass($enumFqcn);
272
        $constants = array_filter(
273
            $r->getConstants(),
274
            static function (string $k) use ($r, $enumFqcn) {
275
                if (PHP_VERSION_ID >= 70100) {
276
                    // ReflectionClass::getReflectionConstant() is only available since PHP 7.1
277
                    $rConstant = $r->getReflectionConstant($k);
278
                    $public = $rConstant->isPublic();
279
                    $value = $rConstant->getValue();
280
                } else {
281
                    $public = true;
282
                    $value = \constant("{$r->getName()}::$k");
283
                }
284
285
                // Only keep public constants, for which value matches enumerable values set:
286
                return $public && $enumFqcn::accepts($value);
287
            },
288
            ARRAY_FILTER_USE_KEY
289
        );
290