Skip to content

Commit e2adc33

Browse files
committed
added support for PHP 8.1 enum [Closes #23]
1 parent e0463dd commit e2adc33

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

src/RobotLoader/RobotLoader.php

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -386,6 +386,9 @@ private function scanPhp(string $file): array
386386
case T_CLASS:
387387
case T_INTERFACE:
388388
case T_TRAIT:
389+
case PHP_VERSION_ID < 80100
390+
? T_CLASS
391+
: T_ENUM:
389392
$expected = $token[0];
390393
$name = '';
391394
continue 2;
@@ -396,20 +399,13 @@ private function scanPhp(string $file): array
396399
}
397400

398401
if ($expected) {
399-
switch ($expected) {
400-
case T_CLASS:
401-
case T_INTERFACE:
402-
case T_TRAIT:
403-
if ($name && $level === $minLevel) {
404-
$classes[] = $namespace . $name;
405-
}
406-
break;
402+
if ($expected === T_NAMESPACE) {
403+
$namespace = $name ? $name . '\\' : '';
404+
$minLevel = $token === '{' ? 1 : 0;
407405

408-
case T_NAMESPACE:
409-
$namespace = $name ? $name . '\\' : '';
410-
$minLevel = $token === '{' ? 1 : 0;
406+
} elseif ($name && $level === $minLevel) {
407+
$classes[] = $namespace . $name;
411408
}
412-
413409
$expected = null;
414410
}
415411

0 commit comments

Comments
 (0)