@@ -216,6 +216,7 @@ private function assertion(ReflectionMethod $method, string $methodNameTemplate,
216216 /** @var array<string, string> $parameterTypes */
217217 $ parameterTypes = [];
218218 $ parametersReflection = $ method ->getParameters ();
219+ $ nativeReturnType = 'mixed ' ;
219220
220221 foreach ($ parametersReflection as $ parameterReflection ) {
221222 $ parameters [] = $ parameterReflection ->name ;
@@ -228,11 +229,13 @@ private function assertion(ReflectionMethod $method, string $methodNameTemplate,
228229 }
229230
230231 if ($ parameterReflection ->hasType ()) {
231- if ($ parameterReflection ->name === 'value ' && $ typeTemplate ) {
232- $ parameterTypes [$ parameterReflection ->name ] = match ($ typeTemplate ) {
232+ if ($ parameterReflection ->name === 'value ' ) {
233+ $ parameterTypes [$ parameterReflection ->name ] = 'mixed ' ;
234+
235+ $ nativeReturnType = match ($ typeTemplate ) {
233236 '%s|null ' => $ this ->reduceParameterType ($ parameterReflection ->getType ()),
234237 'iterable<%s> ' => 'iterable ' ,
235- 'iterable<%s|null> ' => '? iterable ' ,
238+ 'iterable<%s|null> ' => 'iterable ' ,
236239 };
237240 } else {
238241 $ parameterTypes [$ parameterReflection ->name ] = $ this ->reduceParameterType ($ parameterReflection ->getType ());
@@ -246,7 +249,6 @@ private function assertion(ReflectionMethod $method, string $methodNameTemplate,
246249
247250 $ paramsAdded = false ;
248251
249- $ nativeReturnType = $ parameterTypes ? $ parameterTypes [\array_key_first ($ parameterTypes )] : 'mixed ' ;
250252 $ phpdocReturnType = 'mixed ' ;
251253
252254 $ phpdocLines = [];
0 commit comments