@@ -624,7 +624,7 @@ pub(super) mod serde {
624
624
625
625
impl Serialize for Dictionary {
626
626
#[ inline]
627
- fn serialize < S > ( & self , ser : S ) -> Result < < S as Serializer > :: Ok , < S as Serializer > :: Error >
627
+ fn serialize < S > ( & self , ser : S ) -> Result < S :: Ok , S :: Error >
628
628
where
629
629
S : Serializer ,
630
630
{
@@ -645,7 +645,7 @@ pub(super) mod serde {
645
645
formatter. write_str ( "a Dictionary" )
646
646
}
647
647
648
- fn visit_map < A > ( self , mut map : A ) -> Result < Self :: Value , < A as MapAccess < ' de > > :: Error >
648
+ fn visit_map < A > ( self , mut map : A ) -> Result < Self :: Value , A :: Error >
649
649
where
650
650
A : MapAccess < ' de > ,
651
651
{
@@ -657,33 +657,15 @@ pub(super) mod serde {
657
657
}
658
658
}
659
659
660
- impl < ' de > Deserialize < ' de > for Dictionary < Unique > {
660
+ impl < ' de , Access : ThreadAccess > Deserialize < ' de > for Dictionary < Access > {
661
661
#[ inline]
662
662
fn deserialize < D > ( deserializer : D ) -> Result < Self , D :: Error >
663
663
where
664
664
D : Deserializer < ' de > ,
665
665
{
666
- deserializer. deserialize_map ( DictionaryVisitor )
667
- }
668
- }
669
-
670
- impl < ' de > Deserialize < ' de > for Dictionary < Shared > {
671
- #[ inline]
672
- fn deserialize < D > ( deserializer : D ) -> Result < Self , D :: Error >
673
- where
674
- D : Deserializer < ' de > ,
675
- {
676
- Dictionary :: < Unique > :: deserialize ( deserializer) . map ( Dictionary :: into_shared)
677
- }
678
- }
679
-
680
- impl < ' de > Deserialize < ' de > for Dictionary < ThreadLocal > {
681
- #[ inline]
682
- fn deserialize < D > ( deserializer : D ) -> Result < Self , D :: Error >
683
- where
684
- D : Deserializer < ' de > ,
685
- {
686
- Dictionary :: < Unique > :: deserialize ( deserializer) . map ( Dictionary :: into_thread_local)
666
+ deserializer
667
+ . deserialize_map ( DictionaryVisitor )
668
+ . map ( |dict| unsafe { dict. cast_access ( ) } )
687
669
}
688
670
}
689
671
}
0 commit comments