@@ -35,13 +35,9 @@ pub fn render(p_original: &Peripheral, index: &Index, config: &Config) -> Result
3535 let address = util:: hex ( p. base_address as u64 ) ;
3636 let description = util:: respace ( p. description . as_ref ( ) . unwrap_or ( & p. name ) ) ;
3737
38- let name_snake_case = Ident :: new ( & name. to_sanitized_snake_case ( ) , span) ;
38+ let name_snake_case = name. to_snake_case_ident ( span) ;
3939 let ( derive_regs, base, path) = if let Some ( path) = path {
40- (
41- true ,
42- Ident :: new ( & path. peripheral . to_sanitized_snake_case ( ) , span) ,
43- path,
44- )
40+ ( true , path. peripheral . to_snake_case_ident ( span) , path)
4541 } else {
4642 ( false , name_snake_case. clone ( ) , BlockPath :: new ( & p. name ) )
4743 } ;
@@ -705,13 +701,11 @@ fn expand_cluster(
705701 let mut accessors = TokenStream :: new ( ) ;
706702 let nb_name = util:: replace_suffix ( & info. name , "" ) ;
707703 let ty = name_to_ty ( & nb_name, name) ?;
708- let nb_name_cs = Ident :: new ( & nb_name. to_sanitized_snake_case ( ) , span) ;
704+ let nb_name_cs = nb_name. to_snake_case_ident ( span) ;
709705 let description = info. description . as_ref ( ) . unwrap_or ( & info. name ) ;
710706 for ( i, idx) in array_info. indexes ( ) . enumerate ( ) {
711- let idx_name = Ident :: new (
712- & util:: replace_suffix ( & info. name , & idx) . to_sanitized_snake_case ( ) ,
713- span,
714- ) ;
707+ let idx_name =
708+ util:: replace_suffix ( & info. name , & idx) . to_snake_case_ident ( span) ;
715709 let comment = make_comment (
716710 cluster_size,
717711 info. address_offset + ( i as u32 ) * cluster_size / 8 ,
@@ -814,14 +808,12 @@ fn expand_register(
814808 let mut accessors = TokenStream :: new ( ) ;
815809 let nb_name = util:: replace_suffix ( & info. fullname ( config. ignore_groups ) , "" ) ;
816810 let ty = name_to_wrapped_ty ( & nb_name, name) ?;
817- let nb_name_cs = Ident :: new ( & nb_name. to_sanitized_snake_case ( ) , span) ;
811+ let nb_name_cs = nb_name. to_snake_case_ident ( span) ;
818812 let description = info. description . clone ( ) . unwrap_or_default ( ) ;
819813 let info_name = info. fullname ( config. ignore_groups ) ;
820814 for ( i, idx) in array_info. indexes ( ) . enumerate ( ) {
821- let idx_name = Ident :: new (
822- & util:: replace_suffix ( & info_name, & idx) . to_sanitized_snake_case ( ) ,
823- span,
824- ) ;
815+ let idx_name =
816+ util:: replace_suffix ( & info_name, & idx) . to_snake_case_ident ( span) ;
825817 let comment = make_comment (
826818 register_size,
827819 info. address_offset + ( i as u32 ) * register_size / 8 ,
@@ -933,7 +925,7 @@ fn cluster_block(
933925 let description =
934926 util:: escape_brackets ( & util:: respace ( c. description . as_ref ( ) . unwrap_or ( & c. name ) ) ) ;
935927
936- let name_snake_case = Ident :: new ( & mod_name. to_sanitized_snake_case ( ) , Span :: call_site ( ) ) ;
928+ let name_snake_case = mod_name. to_snake_case_ident ( Span :: call_site ( ) ) ;
937929
938930 Ok ( quote ! {
939931 #reg_block
@@ -962,7 +954,10 @@ fn expand_svd_register(
962954
963955 let ty = name_to_wrapped_ty ( & ty_name, name) ?;
964956
965- out. push ( new_syn_field ( & nb_name. to_sanitized_snake_case ( ) , ty) ) ;
957+ out. push ( new_syn_field (
958+ nb_name. to_snake_case_ident ( Span :: call_site ( ) ) ,
959+ ty,
960+ ) ) ;
966961 }
967962 Ok ( out)
968963 } else {
@@ -981,7 +976,7 @@ fn convert_svd_register(
981976 let info_name = info. fullname ( ignore_group) ;
982977 let ty = name_to_wrapped_ty ( & info_name, name)
983978 . with_context ( || format ! ( "Error converting register name {info_name}" ) ) ?;
984- new_syn_field ( & info_name. to_sanitized_snake_case ( ) , ty)
979+ new_syn_field ( info_name. to_snake_case_ident ( Span :: call_site ( ) ) , ty)
985980 }
986981 Register :: Array ( info, array_info) => {
987982 let info_name = info. fullname ( ignore_group) ;
@@ -990,7 +985,7 @@ fn convert_svd_register(
990985 . with_context ( || format ! ( "Error converting register name {nb_name}" ) ) ?;
991986 let array_ty = new_syn_array ( ty, array_info. dim ) ?;
992987
993- new_syn_field ( & nb_name. to_sanitized_snake_case ( ) , array_ty)
988+ new_syn_field ( nb_name. to_snake_case_ident ( Span :: call_site ( ) ) , array_ty)
994989 }
995990 } )
996991}
@@ -1011,7 +1006,10 @@ fn array_proxy(
10111006 ) ) ?;
10121007
10131008 Ok ( RegisterBlockField {
1014- syn_field : new_syn_field ( & ty_name. to_sanitized_snake_case ( ) , ap_path. into ( ) ) ,
1009+ syn_field : new_syn_field (
1010+ ty_name. to_snake_case_ident ( Span :: call_site ( ) ) ,
1011+ ap_path. into ( ) ,
1012+ ) ,
10151013 description : info. description . as_ref ( ) . unwrap_or ( & info. name ) . into ( ) ,
10161014 offset : info. address_offset ,
10171015 size : 0 ,
@@ -1034,7 +1032,10 @@ fn expand_svd_cluster(
10341032
10351033 let ty = name_to_ty ( & ty_name, name) ?;
10361034
1037- out. push ( new_syn_field ( & nb_name. to_sanitized_snake_case ( ) , ty) ) ;
1035+ out. push ( new_syn_field (
1036+ nb_name. to_snake_case_ident ( Span :: call_site ( ) ) ,
1037+ ty,
1038+ ) ) ;
10381039 }
10391040 Ok ( out)
10401041 } else {
@@ -1048,22 +1049,22 @@ fn convert_svd_cluster(cluster: &Cluster, name: Option<&str>) -> Result<syn::Fie
10481049 Cluster :: Single ( info) => {
10491050 let ty_name = util:: replace_suffix ( & info. name , "" ) ;
10501051 let ty = name_to_ty ( & ty_name, name) ?;
1051- new_syn_field ( & info. name . to_sanitized_snake_case ( ) , ty)
1052+ new_syn_field ( info. name . to_snake_case_ident ( Span :: call_site ( ) ) , ty)
10521053 }
10531054 Cluster :: Array ( info, array_info) => {
10541055 let ty_name = util:: replace_suffix ( & info. name , "" ) ;
10551056 let ty = name_to_ty ( & ty_name, name) ?;
10561057 let array_ty = new_syn_array ( ty, array_info. dim ) ?;
10571058
1058- new_syn_field ( & ty_name. to_sanitized_snake_case ( ) , array_ty)
1059+ new_syn_field ( ty_name. to_snake_case_ident ( Span :: call_site ( ) ) , array_ty)
10591060 }
10601061 } )
10611062}
10621063
1063- fn new_syn_field ( ident : & str , ty : syn:: Type ) -> syn:: Field {
1064+ fn new_syn_field ( ident : Ident , ty : syn:: Type ) -> syn:: Field {
10641065 let span = Span :: call_site ( ) ;
10651066 syn:: Field {
1066- ident : Some ( Ident :: new ( ident, span ) ) ,
1067+ ident : Some ( ident) ,
10671068 vis : syn:: Visibility :: Public ( syn:: VisPublic {
10681069 pub_token : Token ! [ pub ] ( span) ,
10691070 } ) ,
0 commit comments