Skip to content

Commit 476e529

Browse files
committed
Improve fromPair implementation the key can be a MapKey
1 parent e686919 commit 476e529

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

src/Dictionary.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,14 @@ final class Dictionary implements MemberOrderedMap
3131
private readonly array $members;
3232

3333
/**
34-
* @param iterable<string, SfMember|SfMemberInput> $members
34+
* @param iterable<MapKey|string, SfMember|SfMemberInput> $members
3535
*/
3636
private function __construct(iterable $members = [])
3737
{
3838
$filteredMembers = [];
3939
foreach ($members as $key => $member) {
40-
$filteredMembers[MapKey::from($key)->value] = self::filterMember($member);
40+
$offset = $key instanceof MapKey ? $key->value : MapKey::from($key)->value;
41+
$filteredMembers[$offset] = self::filterMember($member);
4142
}
4243

4344
$this->members = $filteredMembers;

src/Parameters.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,14 @@ final class Parameters implements MemberOrderedMap
3030
private readonly array $members;
3131

3232
/**
33-
* @param iterable<string, SfItemInput> $members
33+
* @param iterable<MapKey|string, SfItemInput> $members
3434
*/
3535
private function __construct(iterable $members = [])
3636
{
3737
$filteredMembers = [];
3838
foreach ($members as $key => $member) {
39-
$filteredMembers[MapKey::from($key)->value] = self::filterMember($member);
39+
$offset = $key instanceof MapKey ? $key->value : MapKey::from($key)->value;
40+
$filteredMembers[$offset] = self::filterMember($member);
4041
}
4142

4243
$this->members = $filteredMembers;

0 commit comments

Comments
 (0)