@@ -968,13 +968,7 @@ fn deserialize_struct(
968968 // Skip fields that shouldn't be deserialized or that were flattened,
969969 // so they don't appear in the storage in their literal form
970970 . filter ( |& ( _, field) | !field. attrs . skip_deserializing ( ) && !field. attrs . flatten ( ) )
971- . map ( |( i, field) | {
972- (
973- field. attrs . name ( ) . deserialize_name ( ) ,
974- field_i ( i) ,
975- field. attrs . aliases ( ) ,
976- )
977- } )
971+ . map ( |( i, field) | ( field_i ( i) , field. attrs . aliases ( ) ) )
978972 . collect ( ) ;
979973 let field_visitor = deserialize_field_identifier ( & field_names_idents, cattrs, has_flatten) ;
980974
@@ -1032,9 +1026,7 @@ fn deserialize_struct(
10321026 let fields_stmt = if has_flatten {
10331027 None
10341028 } else {
1035- let field_names = field_names_idents
1036- . iter ( )
1037- . flat_map ( |& ( _, _, aliases) | aliases) ;
1029+ let field_names = field_names_idents. iter ( ) . flat_map ( |& ( _, aliases) | aliases) ;
10381030
10391031 Some ( quote ! {
10401032 #[ doc( hidden) ]
@@ -1131,13 +1123,7 @@ fn deserialize_struct_in_place(
11311123 . iter ( )
11321124 . enumerate ( )
11331125 . filter ( |& ( _, field) | !field. attrs . skip_deserializing ( ) )
1134- . map ( |( i, field) | {
1135- (
1136- field. attrs . name ( ) . deserialize_name ( ) ,
1137- field_i ( i) ,
1138- field. attrs . aliases ( ) ,
1139- )
1140- } )
1126+ . map ( |( i, field) | ( field_i ( i) , field. attrs . aliases ( ) ) )
11411127 . collect ( ) ;
11421128
11431129 let field_visitor = deserialize_field_identifier ( & field_names_idents, cattrs, false ) ;
@@ -1149,9 +1135,7 @@ fn deserialize_struct_in_place(
11491135 } ;
11501136 let visit_seq = Stmts ( deserialize_seq_in_place ( params, fields, cattrs, expecting) ) ;
11511137 let visit_map = Stmts ( deserialize_map_in_place ( params, fields, cattrs) ) ;
1152- let field_names = field_names_idents
1153- . iter ( )
1154- . flat_map ( |& ( _, _, aliases) | aliases) ;
1138+ let field_names = field_names_idents. iter ( ) . flat_map ( |& ( _, aliases) | aliases) ;
11551139 let type_name = cattrs. name ( ) . deserialize_name ( ) ;
11561140
11571141 let in_place_impl_generics = de_impl_generics. in_place ( ) ;
@@ -1242,24 +1226,20 @@ fn prepare_enum_variant_enum(variants: &[Variant]) -> (TokenStream, Stmts) {
12421226
12431227 let variant_names_idents: Vec < _ > = deserialized_variants
12441228 . clone ( )
1245- . map ( |( i, variant) | {
1246- (
1247- variant. attrs . name ( ) . deserialize_name ( ) ,
1248- field_i ( i) ,
1249- variant. attrs . aliases ( ) ,
1250- )
1251- } )
1229+ . map ( |( i, variant) | ( field_i ( i) , variant. attrs . aliases ( ) ) )
12521230 . collect ( ) ;
12531231
12541232 let fallthrough = deserialized_variants
12551233 . position ( |( _, variant) | variant. attrs . other ( ) )
12561234 . map ( |other_idx| {
1257- let ignore_variant = variant_names_idents[ other_idx] . 1 . clone ( ) ;
1235+ let ignore_variant = variant_names_idents[ other_idx] . 0 . clone ( ) ;
12581236 quote ! ( _serde:: __private:: Ok ( __Field:: #ignore_variant) )
12591237 } ) ;
12601238
12611239 let variants_stmt = {
1262- let variant_names = variant_names_idents. iter ( ) . flat_map ( |& ( _, _, aliases) | aliases) ;
1240+ let variant_names = variant_names_idents
1241+ . iter ( )
1242+ . flat_map ( |& ( _, aliases) | aliases) ;
12631243 quote ! {
12641244 #[ doc( hidden) ]
12651245 const VARIANTS : & ' static [ & ' static str ] = & [ #( #variant_names) , * ] ;
@@ -2010,14 +1990,14 @@ fn deserialize_untagged_newtype_variant(
20101990}
20111991
20121992fn deserialize_generated_identifier (
2013- fields : & [ ( & str , Ident , & BTreeSet < String > ) ] ,
1993+ fields : & [ ( Ident , & BTreeSet < String > ) ] ,
20141994 has_flatten : bool ,
20151995 is_variant : bool ,
20161996 ignore_variant : Option < TokenStream > ,
20171997 fallthrough : Option < TokenStream > ,
20181998) -> Fragment {
20191999 let this_value = quote ! ( __Field) ;
2020- let field_idents: & Vec < _ > = & fields. iter ( ) . map ( |( _ , ident, _) | ident) . collect ( ) ;
2000+ let field_idents: & Vec < _ > = & fields. iter ( ) . map ( |( ident, _) | ident) . collect ( ) ;
20212001
20222002 let visitor_impl = Stmts ( deserialize_identifier (
20232003 & this_value,
@@ -2067,7 +2047,7 @@ fn deserialize_generated_identifier(
20672047/// Generates enum and its `Deserialize` implementation that represents each
20682048/// non-skipped field of the struct
20692049fn deserialize_field_identifier (
2070- fields : & [ ( & str , Ident , & BTreeSet < String > ) ] ,
2050+ fields : & [ ( Ident , & BTreeSet < String > ) ] ,
20712051 cattrs : & attr:: Container ,
20722052 has_flatten : bool ,
20732053) -> Stmts {
@@ -2144,16 +2124,10 @@ fn deserialize_custom_identifier(
21442124
21452125 let names_idents: Vec < _ > = ordinary
21462126 . iter ( )
2147- . map ( |variant| {
2148- (
2149- variant. attrs . name ( ) . deserialize_name ( ) ,
2150- variant. ident . clone ( ) ,
2151- variant. attrs . aliases ( ) ,
2152- )
2153- } )
2127+ . map ( |variant| ( variant. ident . clone ( ) , variant. attrs . aliases ( ) ) )
21542128 . collect ( ) ;
21552129
2156- let names = names_idents. iter ( ) . flat_map ( |& ( _, _ , aliases) | aliases) ;
2130+ let names = names_idents. iter ( ) . flat_map ( |& ( _, aliases) | aliases) ;
21572131
21582132 let names_const = if fallthrough. is_some ( ) {
21592133 None
@@ -2209,18 +2183,18 @@ fn deserialize_custom_identifier(
22092183
22102184fn deserialize_identifier (
22112185 this_value : & TokenStream ,
2212- fields : & [ ( & str , Ident , & BTreeSet < String > ) ] ,
2186+ fields : & [ ( Ident , & BTreeSet < String > ) ] ,
22132187 is_variant : bool ,
22142188 fallthrough : Option < TokenStream > ,
22152189 fallthrough_borrowed : Option < TokenStream > ,
22162190 collect_other_fields : bool ,
22172191 expecting : Option < & str > ,
22182192) -> Fragment {
2219- let str_mapping = fields. iter ( ) . map ( |( _ , ident, aliases) | {
2193+ let str_mapping = fields. iter ( ) . map ( |( ident, aliases) | {
22202194 // `aliases` also contains a main name
22212195 quote ! ( #( #aliases) |* => _serde:: __private:: Ok ( #this_value:: #ident) )
22222196 } ) ;
2223- let bytes_mapping = fields. iter ( ) . map ( |( _ , ident, aliases) | {
2197+ let bytes_mapping = fields. iter ( ) . map ( |( ident, aliases) | {
22242198 // `aliases` also contains a main name
22252199 let aliases = aliases
22262200 . iter ( )
@@ -2375,7 +2349,7 @@ fn deserialize_identifier(
23752349 }
23762350 }
23772351 } else {
2378- let u64_mapping = fields. iter ( ) . enumerate ( ) . map ( |( i, ( _ , ident, _) ) | {
2352+ let u64_mapping = fields. iter ( ) . enumerate ( ) . map ( |( i, ( ident, _) ) | {
23792353 let i = i as u64 ;
23802354 quote ! ( #i => _serde:: __private:: Ok ( #this_value:: #ident) )
23812355 } ) ;
0 commit comments