From add838da9b7962f8c41036b1162174223b6ca51c Mon Sep 17 00:00:00 2001 From: Markus Staab <47448731+clxmstaab@users.noreply.github.com> Date: Tue, 8 Apr 2025 15:22:29 +0200 Subject: [PATCH] Inline array_map(fn, $arr) and use foreach-loop instead --- src/Reflection/Adapter/ReflectionClass.php | 12 +++++------- src/Reflection/Adapter/ReflectionMethod.php | 11 ++++++----- src/Reflection/ReflectionClass.php | 7 ++++++- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/src/Reflection/Adapter/ReflectionClass.php b/src/Reflection/Adapter/ReflectionClass.php index e4b7b259f..33d9f5074 100644 --- a/src/Reflection/Adapter/ReflectionClass.php +++ b/src/Reflection/Adapter/ReflectionClass.php @@ -384,14 +384,12 @@ public function getTraits(): array { $traits = $this->betterReflectionClass->getTraits(); - /** @var list $traitNames */ - $traitNames = array_map(static fn (BetterReflectionClass $trait): string => $trait->getName(), $traits); + $result = []; + foreach ($traits as $trait) { + $result[$trait->getName()] = new self($trait); + } - /** @psalm-suppress ImpureFunctionCall */ - return array_combine( - $traitNames, - array_map(static fn (BetterReflectionClass $trait): self => new self($trait), $traits), - ); + return $result; } /** diff --git a/src/Reflection/Adapter/ReflectionMethod.php b/src/Reflection/Adapter/ReflectionMethod.php index 1d4ef4a2e..1d05bd984 100644 --- a/src/Reflection/Adapter/ReflectionMethod.php +++ b/src/Reflection/Adapter/ReflectionMethod.php @@ -17,7 +17,6 @@ use Roave\BetterReflection\Reflection\Exception\NoObjectProvided; use Roave\BetterReflection\Reflection\ReflectionAttribute as BetterReflectionAttribute; use Roave\BetterReflection\Reflection\ReflectionMethod as BetterReflectionMethod; -use Roave\BetterReflection\Reflection\ReflectionParameter as BetterReflectionParameter; use Roave\BetterReflection\Reflector\Exception\IdentifierNotFound; use Roave\BetterReflection\Util\FileHelper; use Throwable; @@ -198,10 +197,12 @@ public function getNumberOfRequiredParameters(): int */ public function getParameters(): array { - return array_map( - static fn (BetterReflectionParameter $parameter): ReflectionParameter => new ReflectionParameter($parameter), - $this->betterReflectionMethod->getParameters(), - ); + $parameters = []; + foreach ($this->betterReflectionMethod->getParameters() as $parameter) { + $parameters[] = new ReflectionParameter($parameter); + } + + return $parameters; } /** @psalm-mutation-free */ diff --git a/src/Reflection/ReflectionClass.php b/src/Reflection/ReflectionClass.php index 53a6978b8..e2b72319e 100644 --- a/src/Reflection/ReflectionClass.php +++ b/src/Reflection/ReflectionClass.php @@ -1154,7 +1154,12 @@ public function getParentClass(): ReflectionClass|null */ public function getParentClassNames(): array { - return array_map(static fn (self $parentClass): string => $parentClass->getName(), $this->getParentClasses()); + $classNames = []; + foreach ($this->getParentClasses() as $parentClass) { + $classNames[] = $parentClass->getName(); + } + + return $classNames; } /** @return list */