diff --git a/CHANGELOG.md b/CHANGELOG.md index 542d2b2..b658f3a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ * refactor(`ArrayLikeMetadata`): Add `$type`. * refactor(`PropertyMapping`): Add `$sourceTypes`. * refactor(`TraversableToArrayAccessTransformer`): Refactor for clarity. +* refactor(`ArrayLikeTransformerTrait`): Cleanup. ## 0.5.22 diff --git a/src/Transformer/Trait/ArrayLikeTransformerTrait.php b/src/Transformer/Trait/ArrayLikeTransformerTrait.php index 2642fd2..2fc7134 100644 --- a/src/Transformer/Trait/ArrayLikeTransformerTrait.php +++ b/src/Transformer/Trait/ArrayLikeTransformerTrait.php @@ -44,7 +44,11 @@ private function transformTraversableSource( * @var mixed $sourceMemberValue */ foreach ($source as $sourceMemberKey => $sourceMemberValue) { - $result = $this->transformMember( + /** + * @var mixed $key + * @var mixed $value + */ + [$key, $value] = $this->transformMember( counter: $i, sourceMemberKey: $sourceMemberKey, sourceMemberValue: $sourceMemberValue, @@ -53,7 +57,7 @@ private function transformTraversableSource( context: $context, ); - yield $result['key'] => $result['value']; + yield $key => $value; $i++; } @@ -61,7 +65,7 @@ private function transformTraversableSource( /** * @param null|\ArrayAccess|array $target - * @return array{key:mixed,value:mixed} + * @return array{0:mixed,1:mixed} */ private function transformMember( mixed $sourceMemberKey, @@ -165,10 +169,7 @@ private function transformMember( // the target value if ($targetMetadata->memberValueIsUntyped()) { - return [ - 'key' => $targetMemberKey, - 'value' => $sourceMemberValue, - ]; + return [$targetMemberKey, $sourceMemberValue]; } // if the target value types has a type compatible with the source @@ -176,10 +177,7 @@ private function transformMember( foreach ($targetMetadata->getMemberValueTypes() as $memberValueType) { if (TypeCheck::isVariableInstanceOf($sourceMemberValue, $memberValueType)) { - return [ - 'key' => $targetMemberKey, - 'value' => $sourceMemberValue, - ]; + return [$targetMemberKey, $sourceMemberValue]; } } @@ -219,9 +217,6 @@ private function transformMember( path: $path, ); - return [ - 'key' => $targetMemberKey, - 'value' => $targetMemberValue, - ]; + return [$targetMemberKey, $targetMemberValue]; } }