From 1c49aedf1ceaeacdbefa3796b9a60fd8e850fd6d Mon Sep 17 00:00:00 2001 From: Markus Staab Date: Sat, 3 Jan 2026 12:08:06 +0100 Subject: [PATCH] Use static callback for TypeTraverser::map() --- src/PhpDoc/PhpDocBlock.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/PhpDoc/PhpDocBlock.php b/src/PhpDoc/PhpDocBlock.php index 434770b42d..9b08bdf83c 100644 --- a/src/PhpDoc/PhpDocBlock.php +++ b/src/PhpDoc/PhpDocBlock.php @@ -81,11 +81,12 @@ public function transformArrayKeysWithParameterNameMapping(array $array): array public function transformConditionalReturnTypeWithParameterNameMapping(Type $type): Type { - return TypeTraverser::map($type, function (Type $type, callable $traverse): Type { + $nameMapping = $this->parameterNameMapping; + return TypeTraverser::map($type, static function (Type $type, callable $traverse) use ($nameMapping): Type { if ($type instanceof ConditionalTypeForParameter) { $parameterName = substr($type->getParameterName(), 1); - if (array_key_exists($parameterName, $this->parameterNameMapping)) { - $type = $type->changeParameterName('$' . $this->parameterNameMapping[$parameterName]); + if (array_key_exists($parameterName, $nameMapping)) { + $type = $type->changeParameterName('$' . $nameMapping[$parameterName]); } }