@@ -28,8 +28,8 @@ impl VersionedFunctionBody {
28
28
. rev ( )
29
29
. map ( |( version, body) | {
30
30
let version_flag = format_ident ! (
31
- "version_is_equal_to_or_greater_than_{}" ,
32
- version. to_string( ) . replace( "." , "_" )
31
+ "version_is_equal_to_or_greater_than_{version }" ,
32
+ version = version . to_string( ) . replace( "." , "_" )
33
33
) ;
34
34
if version == first_version {
35
35
quote ! { { #body } }
@@ -56,7 +56,7 @@ pub struct CodeGenerator {
56
56
impl CodeGenerator {
57
57
pub fn add_token_kind ( & mut self , name : String ) -> Ident {
58
58
let name = name;
59
- let ident = format_ident ! ( "{}" , name ) ;
59
+ let ident = format_ident ! ( "{name}" ) ;
60
60
self . token_kinds . insert ( name, None ) ;
61
61
ident
62
62
}
@@ -76,7 +76,7 @@ impl CodeGenerator {
76
76
77
77
pub fn add_rule_kind ( & mut self , name : String ) -> Ident {
78
78
let name = name;
79
- let ident = format_ident ! ( "{}" , name ) ;
79
+ let ident = format_ident ! ( "{name}" ) ;
80
80
self . rule_kinds . insert ( name) ;
81
81
ident
82
82
}
@@ -114,8 +114,8 @@ impl CodeGenerator {
114
114
. map ( |version| {
115
115
let version = version. to_string ( ) ;
116
116
let version_name = format_ident ! (
117
- "version_is_equal_to_or_greater_than_{}" ,
118
- version. replace( "." , "_" )
117
+ "version_is_equal_to_or_greater_than_{version }" ,
118
+ version = version . replace( "." , "_" )
119
119
) ;
120
120
quote ! { #[ allow( dead_code) ] pub ( crate ) #version_name: bool } . to_string ( )
121
121
} )
@@ -134,8 +134,8 @@ impl CodeGenerator {
134
134
. map ( |version| {
135
135
let version = version. to_string ( ) ;
136
136
let version_name = format_ident ! (
137
- "version_is_equal_to_or_greater_than_{}" ,
138
- version. replace( "." , "_" )
137
+ "version_is_equal_to_or_greater_than_{version }" ,
138
+ version = version . replace( "." , "_" )
139
139
) ;
140
140
quote ! { #version_name: Version :: parse( #version) . unwrap( ) <= version } . to_string ( )
141
141
} )
@@ -146,18 +146,16 @@ impl CodeGenerator {
146
146
self . scanners
147
147
. iter ( )
148
148
. map ( |( name, scanner) | {
149
- let function_name = format_ident ! ( "scan_{}" , name. to_snake_case( ) ) ;
149
+ let function_name = format_ident ! ( "scan_{name }" , name = name. to_snake_case( ) ) ;
150
150
let body = scanner. to_function_body ( ) ;
151
- format ! (
152
- "{}\n {}" ,
153
- scanner. comment,
154
- quote! {
155
- #[ allow( unused_assignments, unused_parens) ]
156
- pub ( crate ) fn #function_name( & self , stream: & mut Stream ) -> bool {
157
- #body
158
- }
151
+ let comment = & scanner. comment ;
152
+ let function = quote ! {
153
+ #[ allow( unused_assignments, unused_parens) ]
154
+ pub ( crate ) fn #function_name( & self , stream: & mut Stream ) -> bool {
155
+ #body
159
156
}
160
- )
157
+ } ;
158
+ format ! ( "{comment}\n {function}" )
161
159
} )
162
160
. collect ( )
163
161
}
@@ -166,22 +164,20 @@ impl CodeGenerator {
166
164
self . parsers
167
165
. iter ( )
168
166
. map ( |( name, parser) | {
169
- let kind = format_ident ! ( "{}" , name ) ;
170
- let function_name = format_ident ! ( "parse_{}" , name. to_snake_case( ) ) ;
167
+ let kind = format_ident ! ( "{name}" ) ;
168
+ let function_name = format_ident ! ( "parse_{name }" , name = name. to_snake_case( ) ) ;
171
169
let body = parser. to_function_body ( ) ;
172
- format ! (
173
- "{}\n {}" ,
174
- parser. comment,
175
- quote! {
176
- #[ allow( unused_assignments, unused_parens) ]
177
- pub ( crate ) fn #function_name( & self , stream: & mut Stream ) -> ParseResult {
178
- match #body {
179
- Pass { node, error } => Pass { node: cst:: Node :: top_level_rule( RuleKind :: #kind, node) , error } ,
180
- fail => fail
181
- }
170
+ let comment = & parser. comment ;
171
+ let function = quote ! {
172
+ #[ allow( unused_assignments, unused_parens) ]
173
+ pub ( crate ) fn #function_name( & self , stream: & mut Stream ) -> ParseResult {
174
+ match #body {
175
+ Pass { node, error } => Pass { node: cst:: Node :: top_level_rule( RuleKind :: #kind, node) , error } ,
176
+ fail => fail
182
177
}
183
178
}
184
- )
179
+ } ;
180
+ format ! ( "{comment}\n {function}" )
185
181
} )
186
182
. collect ( )
187
183
}
@@ -190,8 +186,8 @@ impl CodeGenerator {
190
186
self . scanners
191
187
. keys ( )
192
188
. map ( |name| {
193
- let production_kind = format_ident ! ( "{}" , name ) ;
194
- let function_name = format_ident ! ( "scan_{}" , name. to_snake_case( ) ) ;
189
+ let production_kind = format_ident ! ( "{name}" ) ;
190
+ let function_name = format_ident ! ( "scan_{name }" , name = name. to_snake_case( ) ) ;
195
191
let error_message = name;
196
192
quote ! {
197
193
ProductionKind :: #production_kind => call_scanner( self , input, Language :: #function_name, TokenKind :: #production_kind, #error_message)
@@ -205,8 +201,8 @@ impl CodeGenerator {
205
201
self . parsers
206
202
. keys ( )
207
203
. map ( |name| {
208
- let production_kind = format_ident ! ( "{}" , name ) ;
209
- let function_name = format_ident ! ( "parse_{}" , name. to_snake_case( ) ) ;
204
+ let production_kind = format_ident ! ( "{name}" ) ;
205
+ let function_name = format_ident ! ( "parse_{name }" , name = name. to_snake_case( ) ) ;
210
206
quote ! {
211
207
ProductionKind :: #production_kind => call_parser( self , input, Language :: #function_name)
212
208
}
0 commit comments