diff options
Diffstat (limited to 'mingling_macros')
| -rw-r--r-- | mingling_macros/src/chain.rs | 6 | ||||
| -rw-r--r-- | mingling_macros/src/lib.rs | 4 | ||||
| -rw-r--r-- | mingling_macros/src/renderer.rs | 5 |
3 files changed, 6 insertions, 9 deletions
diff --git a/mingling_macros/src/chain.rs b/mingling_macros/src/chain.rs index cf91738..84353e9 100644 --- a/mingling_macros/src/chain.rs +++ b/mingling_macros/src/chain.rs @@ -4,7 +4,7 @@ //! generating structs that implement the `Chain` trait from async functions. use proc_macro::TokenStream; -use quote::{ToTokens, quote}; +use quote::quote; use syn::spanned::Spanned; use syn::{ FnArg, Ident, ItemFn, Pat, PatType, ReturnType, Signature, Type, TypePath, parse_macro_input, @@ -122,8 +122,6 @@ pub fn chain_attr(attr: TokenStream, item: TokenStream) -> TokenStream { let pascal_case_name = just_fmt::pascal_case!(fn_name.to_string()); let struct_name = Ident::new(&pascal_case_name, fn_name.span()); - let previous_type_str = previous_type.to_token_stream().to_string(); - // Generate the struct and implementation let expanded = if use_crate_prefix { quote! { @@ -131,7 +129,7 @@ pub fn chain_attr(attr: TokenStream, item: TokenStream) -> TokenStream { #[doc(hidden)] #vis struct #struct_name; - ::mingling::macros::register_type!(#previous_type_str); + ::mingling::macros::register_type!(#previous_type); impl ::mingling::Chain<ThisProgram> for #struct_name { type Previous = #previous_type; diff --git a/mingling_macros/src/lib.rs b/mingling_macros/src/lib.rs index ffcf7e9..9276fca 100644 --- a/mingling_macros/src/lib.rs +++ b/mingling_macros/src/lib.rs @@ -172,8 +172,8 @@ pub fn program_gen_completion(input: TokenStream) -> TokenStream { /// This macro is used internally by the `#[chain]` and `#[renderer]` attribute macros #[proc_macro] pub fn register_type(input: TokenStream) -> TokenStream { - let type_entry = parse_macro_input!(input as syn::LitStr); - let entry_str = type_entry.value(); + let type_ident = parse_macro_input!(input as syn::Ident); + let entry_str = type_ident.to_string(); PACKED_TYPES.lock().unwrap().insert(entry_str); diff --git a/mingling_macros/src/renderer.rs b/mingling_macros/src/renderer.rs index dc00bc9..0f477ee 100644 --- a/mingling_macros/src/renderer.rs +++ b/mingling_macros/src/renderer.rs @@ -4,7 +4,7 @@ //! generating structs that implement the `Renderer` trait from functions. use proc_macro::TokenStream; -use quote::{ToTokens, quote}; +use quote::quote; use syn::spanned::Spanned; use syn::{FnArg, ItemFn, Pat, PatType, ReturnType, Signature, Type, TypePath, parse_macro_input}; @@ -114,7 +114,6 @@ pub fn renderer_attr(item: TokenStream) -> TokenStream { let renderer_entry_str = renderer_entry.to_string(); let renderer_exist_entry_str = renderer_exist_entry.to_string(); - let previous_type_str = previous_type.to_token_stream().to_string(); #[cfg(feature = "general_renderer")] let general_renderer_entry_str = general_renderer_entry.to_string(); @@ -132,7 +131,7 @@ pub fn renderer_attr(item: TokenStream) -> TokenStream { #[doc(hidden)] #vis struct #struct_name; - ::mingling::macros::register_type!(#previous_type_str); + ::mingling::macros::register_type!(#previous_type); impl ::mingling::Renderer for #struct_name { type Previous = #previous_type; |
