@@ -178,13 +178,13 @@ impl<'a, W: Write + 'a, C> Serializer<W, C> {
178
178
179
179
impl < ' a , W : Write + ' a , C : SerializerConfig > Serializer < W , C > {
180
180
#[ inline]
181
- fn maybe_unknown_len_compound < F > ( & ' a mut self , len : Option < usize > , f : F ) -> Result < MaybeUnknownLengthCompound < ' a , W , C > , Error >
181
+ fn maybe_unknown_len_compound < F > ( & ' a mut self , len : Option < u32 > , f : F ) -> Result < MaybeUnknownLengthCompound < ' a , W , C > , Error >
182
182
where F : Fn ( & mut W , u32 ) -> Result < Marker , ValueWriteError >
183
183
{
184
184
Ok ( MaybeUnknownLengthCompound {
185
185
compound : match len {
186
186
Some ( len) => {
187
- f ( & mut self . wr , len as u32 ) ?;
187
+ f ( & mut self . wr , len) ?;
188
188
None
189
189
}
190
190
None => Some ( UnknownLengthCompound :: from ( & * self ) ) ,
@@ -633,8 +633,9 @@ where
633
633
value. serialize ( self )
634
634
}
635
635
636
+ #[ inline]
636
637
fn serialize_seq ( self , len : Option < usize > ) -> Result < Self :: SerializeSeq , Error > {
637
- self . maybe_unknown_len_compound ( len, |wr, len| encode:: write_array_len ( wr, len) )
638
+ self . maybe_unknown_len_compound ( len. map ( |len| len as u32 ) , |wr, len| encode:: write_array_len ( wr, len) )
638
639
}
639
640
640
641
//TODO: normal compund
@@ -661,8 +662,9 @@ where
661
662
self . serialize_tuple ( len)
662
663
}
663
664
665
+ #[ inline]
664
666
fn serialize_map ( self , len : Option < usize > ) -> Result < Self :: SerializeMap , Error > {
665
- self . maybe_unknown_len_compound ( len, |wr, len| encode:: write_map_len ( wr, len) )
667
+ self . maybe_unknown_len_compound ( len. map ( |len| len as u32 ) , |wr, len| encode:: write_map_len ( wr, len) )
666
668
}
667
669
668
670
fn serialize_struct ( self , _name : & ' static str , len : usize ) ->
0 commit comments