@@ -23,12 +23,12 @@ pub fn derive(input: &Input) -> TokenStream {
23
23
let first_field = & fields_names[ 0 ] ;
24
24
25
25
let fields_names_hygienic_1 = input. fields . iter ( )
26
- . map ( |field| field . ident . as_ref ( ) . unwrap ( ) )
27
- . map ( |ident | Ident :: new ( & format ! ( "___soa_derive_private_1_{}" , ident ) , Span :: call_site ( ) ) )
26
+ . enumerate ( )
27
+ . map ( |( i , _ ) | Ident :: new ( & format ! ( "___soa_derive_private_1_{}" , i ) , Span :: call_site ( ) ) )
28
28
. collect :: < Vec < _ > > ( ) ;
29
29
let fields_names_hygienic_2 = input. fields . iter ( )
30
- . map ( |field| field . ident . as_ref ( ) . unwrap ( ) )
31
- . map ( |ident | Ident :: new ( & format ! ( "___soa_derive_private_2_{}" , ident ) , Span :: call_site ( ) ) )
30
+ . enumerate ( )
31
+ . map ( |( i , _ ) | Ident :: new ( & format ! ( "___soa_derive_private_2_{}" , i ) , Span :: call_site ( ) ) )
32
32
. collect :: < Vec < _ > > ( ) ;
33
33
34
34
let fields_types = & input. fields . iter ( )
@@ -256,12 +256,12 @@ pub fn derive_mut(input: &Input) -> TokenStream {
256
256
let fields_names_2 = & fields_names;
257
257
let first_field = & fields_names[ 0 ] ;
258
258
let slice_names_1 = & input. fields . iter ( )
259
- . map ( |field| field . ident . as_ref ( ) . unwrap ( ) . to_string ( ) )
260
- . map ( |ident | Ident :: new ( & format ! ( "{}_slice_1 " , ident ) , Span :: call_site ( ) ) )
259
+ . enumerate ( )
260
+ . map ( |( i , _ ) | Ident :: new ( & format ! ( "___soa_derive_private_slice_1_{} " , i ) , Span :: call_site ( ) ) )
261
261
. collect :: < Vec < _ > > ( ) ;
262
262
let slice_names_2 = & input. fields . iter ( )
263
- . map ( |field| field . ident . as_ref ( ) . unwrap ( ) . to_string ( ) )
264
- . map ( |ident | Ident :: new ( & format ! ( "{}_slice_2 " , ident ) , Span :: call_site ( ) ) )
263
+ . enumerate ( )
264
+ . map ( |( i , _ ) | Ident :: new ( & format ! ( "___soa_derive_private_slice_2_{} " , i ) , Span :: call_site ( ) ) )
265
265
. collect :: < Vec < _ > > ( ) ;
266
266
267
267
let fields_types = & input. fields . iter ( )
0 commit comments