From 69f54957a87ff6b4102ce29a4b2929eb4469397c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20DECOOL?= Date: Mon, 17 Oct 2022 07:42:44 +0200 Subject: [PATCH] Fix false positive on non enum classes --- src/Rule/NoDuplicateEnumValueRule.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Rule/NoDuplicateEnumValueRule.php b/src/Rule/NoDuplicateEnumValueRule.php index bc8049a..80cab59 100644 --- a/src/Rule/NoDuplicateEnumValueRule.php +++ b/src/Rule/NoDuplicateEnumValueRule.php @@ -4,6 +4,7 @@ namespace Timeweb\PHPStan\Rule; +use MyCLabs\Enum\Enum; use PhpParser\Node; use PhpParser\Node\Stmt\Class_; use PHPStan\Analyser\Scope; @@ -32,6 +33,10 @@ public function processNode(Node $node, Scope $scope): array throw new ShouldNotHappenException(); } + if (!$classReflection->isSubclassOf(Enum::class)) { + return []; + } + $duplicatedKeysValue = $this->findDuplicatedKeys($node); if (empty($duplicatedKeysValue)) { return [];