@@ -19,7 +19,7 @@ final class SerializerFactory
1919 /**
2020 * @var array<string,array{string|Closure,class-string<\Tempest\Mapper\Serializer>|Closure,int}[]>
2121 */
22- private(set) array $ contextSerializers = [];
22+ private(set) array $ serializers = [];
2323
2424 public function __construct (
2525 private readonly Container $ container ,
@@ -30,13 +30,10 @@ public function __construct(
3030 */
3131 public function addSerializer (string |array |Closure $ for , string |Closure $ serializerClass , string $ context = Context::DEFAULT , int $ priority = 0 ): self
3232 {
33- if (! isset ($ this ->contextSerializers [$ context ])) {
34- $ this ->contextSerializers [$ context ] = [];
35- }
36-
37- $ this ->contextSerializers [$ context ][] = [$ for , $ serializerClass , $ priority ];
33+ $ this ->serializers [$ context ] ??= [];
34+ $ this ->serializers [$ context ][] = [$ for , $ serializerClass , $ priority ];
3835
39- usort ($ this ->contextSerializers [$ context ], static fn (array $ a , array $ b ) => $ a [2 ] <=> $ b [2 ]);
36+ usort ($ this ->serializers [$ context ], static fn (array $ a , array $ b ) => $ a [2 ] <=> $ b [2 ]);
4037
4138 return $ this ;
4239 }
@@ -63,8 +60,8 @@ public function forProperty(PropertyReflector $property, string $context = Conte
6360 }
6461
6562 $ serializers = [
66- ...($ this ->contextSerializers [$ context ] ?? []),
67- ...($ this ->contextSerializers [Context::DEFAULT ] ?? []),
63+ ...($ this ->serializers [$ context ] ?? []),
64+ ...($ this ->serializers [Context::DEFAULT ] ?? []),
6865 ];
6966
7067 foreach ($ serializers as [$ for , $ serializerClass ]) {
@@ -95,8 +92,8 @@ public function forValue(mixed $value, string $context = Context::DEFAULT): ?Ser
9592 }
9693
9794 $ serializers = [
98- ...($ this ->contextSerializers [$ context ] ?? []),
99- ...($ this ->contextSerializers [Context::DEFAULT ] ?? []),
95+ ...($ this ->serializers [$ context ] ?? []),
96+ ...($ this ->serializers [Context::DEFAULT ] ?? []),
10097 ];
10198
10299 foreach ($ serializers as [$ for , $ serializerClass ]) {
0 commit comments