@@ -83,10 +83,7 @@ pub(crate) fn derive_methods(item_impl: ItemImpl) -> TokenStream2 {
83
83
let sig_span = sig. ident . span ( ) ;
84
84
85
85
let name = sig. ident ;
86
- let name_string = match args. name_override {
87
- Some ( name_override) => name_override,
88
- None => name. to_string ( ) ,
89
- } ;
86
+ let name_string = args. name_override . unwrap_or_else ( || name. to_string ( ) ) ;
90
87
let ret_span = sig. output . span ( ) ;
91
88
let ret_ty = match sig. output {
92
89
syn:: ReturnType :: Default => quote_spanned ! ( ret_span => ( ) ) ,
@@ -300,26 +297,12 @@ fn impl_gdnative_expose(ast: ItemImpl) -> (ItemImpl, ClassMethodExport) {
300
297
return false ;
301
298
} ;
302
299
303
- // NOTE: We take advantage of rust identifiers following
304
- // the same syntax rules as Godot method identifiers. See:
305
- // https://docs.godotengine.org/en/stable/getting_started/scripting/gdscript/gdscript_basics.html#identifiers
306
- match syn:: parse_str :: < syn:: Ident > ( value. as_ref ( ) ) {
307
- Ok ( _) => {
308
- if name_override. replace ( value) . is_some ( ) {
309
- errors. push ( syn:: Error :: new (
310
- last. span ( ) ,
311
- "name was set more than once" ,
312
- ) ) ;
313
- return false ;
314
- }
315
- }
316
- Err ( _) => {
317
- errors. push ( syn:: Error :: new (
318
- last. span ( ) ,
319
- "name value must be a valid identifier" ,
320
- ) ) ;
321
- return false ;
322
- }
300
+ if name_override. replace ( value) . is_some ( ) {
301
+ errors. push ( syn:: Error :: new (
302
+ last. span ( ) ,
303
+ "name was set more than once" ,
304
+ ) ) ;
305
+ return false ;
323
306
}
324
307
}
325
308
_ => {
0 commit comments