diff --git a/baseline.xml b/baseline.xml index f0ef8fa..7dffff8 100644 --- a/baseline.xml +++ b/baseline.xml @@ -54,6 +54,13 @@ + + newLazyProxy( + function () use ($metadata, $data): object { + return $this->doHydrate($metadata, $data); + }, + )]]> + + + + + + + + + @@ -89,23 +104,6 @@ - - - - - - - - - - - $this->extractProfileCreated($object), - $object instanceof Skill => $this->extractSkill($object), - default => throw new InvalidArgumentException('Unknown object type'), - }]]> - - diff --git a/src/Normalizer/ArrayNormalizer.php b/src/Normalizer/ArrayNormalizer.php index 3d0d8aa..c9c33be 100644 --- a/src/Normalizer/ArrayNormalizer.php +++ b/src/Normalizer/ArrayNormalizer.php @@ -10,7 +10,6 @@ use Symfony\Component\TypeInfo\Type\CollectionType; use Symfony\Component\TypeInfo\Type\NullableType; -use function array_map; use function is_array; #[Attribute(Attribute::TARGET_PROPERTY)] @@ -32,7 +31,11 @@ public function normalize(mixed $value): array|null throw InvalidArgument::withWrongType('array|null', $value); } - return array_map(fn (mixed $value): mixed => $this->normalizer->normalize($value), $value); + foreach ($value as &$item) { + $item = $this->normalizer->normalize($item); + } + + return $value; } /** @return array|null */ @@ -46,7 +49,11 @@ public function denormalize(mixed $value): array|null throw InvalidArgument::withWrongType('array|null', $value); } - return array_map(fn (mixed $value): mixed => $this->normalizer->denormalize($value), $value); + foreach ($value as &$item) { + $item = $this->normalizer->denormalize($item); + } + + return $value; } public function setHydrator(Hydrator $hydrator): void