Skip to content

Commit 9a75d3d

Browse files
committed
Fix ParametersAcceptorSelector
1 parent a4ba9df commit 9a75d3d

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

src/Reflection/ParametersAcceptorSelector.php

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)