From c6e3fa1779fb7115f84e0d02a29891b9af12c00f Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Sun, 2 Jun 2024 19:24:53 +0700 Subject: [PATCH 1/2] [CodeQuality] Allow check in current Class_ with multiple props on CompleteDynamicPropertiesRector --- rules/CodeQuality/NodeAnalyzer/ClassLikeAnalyzer.php | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/rules/CodeQuality/NodeAnalyzer/ClassLikeAnalyzer.php b/rules/CodeQuality/NodeAnalyzer/ClassLikeAnalyzer.php index c84b56e91a7..99aff2f6b50 100644 --- a/rules/CodeQuality/NodeAnalyzer/ClassLikeAnalyzer.php +++ b/rules/CodeQuality/NodeAnalyzer/ClassLikeAnalyzer.php @@ -5,15 +5,9 @@ namespace Rector\CodeQuality\NodeAnalyzer; use PhpParser\Node\Stmt\Class_; -use Rector\NodeNameResolver\NodeNameResolver; final readonly class ClassLikeAnalyzer { - public function __construct( - private NodeNameResolver $nodeNameResolver - ) { - } - /** * @return string[] */ @@ -22,7 +16,9 @@ public function resolvePropertyNames(Class_ $class): array $propertyNames = []; foreach ($class->getProperties() as $property) { - $propertyNames[] = $this->nodeNameResolver->getName($property); + foreach ($property->props as $prop) { + $propertyNames[] = $prop->name->toString(); + } } return $propertyNames; From 1c3061acaefadd5489870e439cedad7e9941aca1 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Sun, 2 Jun 2024 19:25:06 +0700 Subject: [PATCH 2/2] [CodeQuality] Allow check in current Class_ with multiple props on CompleteDynamicPropertiesRector --- .../Fixture/multiple_props.php.inc | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 rules-tests/CodeQuality/Rector/Class_/CompleteDynamicPropertiesRector/Fixture/multiple_props.php.inc diff --git a/rules-tests/CodeQuality/Rector/Class_/CompleteDynamicPropertiesRector/Fixture/multiple_props.php.inc b/rules-tests/CodeQuality/Rector/Class_/CompleteDynamicPropertiesRector/Fixture/multiple_props.php.inc new file mode 100644 index 00000000000..ca3e3ababef --- /dev/null +++ b/rules-tests/CodeQuality/Rector/Class_/CompleteDynamicPropertiesRector/Fixture/multiple_props.php.inc @@ -0,0 +1,35 @@ +c = 5; + } +} + +?> +----- +c = 5; + } +} + +?>