@@ -261,20 +261,18 @@ public static function selectFromArgs(
261261 if (isset ($ args [0 ]) && (bool ) $ args [0 ]->getAttribute (ArrayFindArgVisitor::ATTRIBUTE_NAME )) {
262262 $ acceptor = $ parametersAcceptors [0 ];
263263 $ parameters = $ acceptor ->getParameters ();
264+ $ argType = $ scope ->getType ($ args [0 ]->value );
264265 $ parameters [1 ] = new NativeParameterReflection (
265266 $ parameters [1 ]->getName (),
266267 $ parameters [1 ]->isOptional (),
267- new UnionType ([
268- new CallableType (
269- [
270- new DummyParameter ('value ' , $ scope ->getIterableValueType ($ scope ->getType ($ args [0 ]->value )), false , PassedByReference::createNo (), false , null ),
271- new DummyParameter ('key ' , $ scope ->getIterableKeyType ($ scope ->getType ($ args [0 ]->value )), false , PassedByReference::createNo (), false , null ),
272- ],
273- new BooleanType (),
274- false ,
275- ),
276- new NullType (),
277- ]),
268+ new CallableType (
269+ [
270+ new DummyParameter ('value ' , $ scope ->getIterableValueType ($ argType ), false , PassedByReference::createNo (), false , null ),
271+ new DummyParameter ('key ' , $ scope ->getIterableKeyType ($ argType ), false , PassedByReference::createNo (), false , null ),
272+ ],
273+ new BooleanType (),
274+ false ,
275+ ),
278276 $ parameters [1 ]->passedByReference (),
279277 $ parameters [1 ]->isVariadic (),
280278 $ parameters [1 ]->getDefaultValue (),
0 commit comments