diff --git a/src/lib.rs b/src/lib.rs index 7725152..be30f83 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -26,18 +26,10 @@ pub fn derive_http_get_request(input: TokenStream) -> TokenStream { } // Determine response type name - let response_name_str = if let Some(custom_resp) = response_name_opt { - custom_resp - } else if query_name_str == "Q" { - "R".to_string() - } else if query_name_str.ends_with('Q') { - format!("{}R", &query_name_str[..query_name_str.len() - 1]) - } else { - panic!("HttpRequest derive macro expects the type name to be 'Q' or end with 'Q', or specify #[http_response = \"...\"] to override"); - }; + let response_name_str = response_name_opt.unwrap_or_else(|| format!("{}Resp", query_name_str)); let response_name = format_ident!("{}", response_name_str); - // Parse optional #[http_error_type = "..."] attribute (default to `current_mod::E`) + // Parse optional #[http_error_type = "..."] attribute (default to `E`) let mut error_type = syn::Path::from(syn::Ident::new("E", proc_macro2::Span::call_site())); for attr in &input.attrs { if attr.path().is_ident("http_error_type") { @@ -101,7 +93,7 @@ pub fn derive_http_get_request(input: TokenStream) -> TokenStream { async fn send( &self, headers: Option>, - ) -> Result { // Use the error type here + ) -> Result { use awc::Client; use urlencoding::encode;