aboutsummaryrefslogtreecommitdiff
path: root/macros/src
diff options
context:
space:
mode:
Diffstat (limited to 'macros/src')
-rw-r--r--macros/src/factory/macro_args.rs44
-rw-r--r--macros/src/lib.rs13
2 files changed, 7 insertions, 50 deletions
diff --git a/macros/src/factory/macro_args.rs b/macros/src/factory/macro_args.rs
index cb2cbc9..76b29a2 100644
--- a/macros/src/factory/macro_args.rs
+++ b/macros/src/factory/macro_args.rs
@@ -5,7 +5,7 @@ use syn::Token;
use crate::macro_flag::MacroFlag;
use crate::util::iterator_ext::IteratorExt;
-pub const FACTORY_MACRO_FLAGS: &[&str] = &["threadsafe", "async"];
+pub const FACTORY_MACRO_FLAGS: &[&str] = &["threadsafe"];
pub struct FactoryMacroArgs
{
@@ -59,7 +59,7 @@ mod tests
fn can_parse_with_single_flag() -> Result<(), Box<dyn Error>>
{
let input_args = quote! {
- async = true
+ threadsafe = true
};
let factory_macro_args = parse2::<FactoryMacroArgs>(input_args)?;
@@ -67,7 +67,7 @@ mod tests
assert_eq!(
factory_macro_args.flags,
Punctuated::from_iter(vec![MacroFlag {
- name: format_ident!("async"),
+ name: format_ident!("threadsafe"),
value: MacroFlagValue::Literal(Lit::Bool(LitBool::new(
true,
Span::call_site()
@@ -79,42 +79,10 @@ mod tests
}
#[test]
- fn can_parse_with_multiple_flags() -> Result<(), Box<dyn Error>>
- {
- let input_args = quote! {
- async = true, threadsafe = false
- };
-
- let factory_macro_args = parse2::<FactoryMacroArgs>(input_args)?;
-
- assert_eq!(
- factory_macro_args.flags,
- Punctuated::from_iter(vec![
- MacroFlag {
- name: format_ident!("async"),
- value: MacroFlagValue::Literal(Lit::Bool(LitBool::new(
- true,
- Span::call_site()
- )))
- },
- MacroFlag {
- name: format_ident!("threadsafe"),
- value: MacroFlagValue::Literal(Lit::Bool(LitBool::new(
- false,
- Span::call_site()
- )))
- }
- ])
- );
-
- Ok(())
- }
-
- #[test]
fn cannot_parse_with_invalid_flag()
{
let input_args = quote! {
- async = true, threadsafe = false, foo = true
+ threadsafe = false, foo = true
};
assert!(parse2::<FactoryMacroArgs>(input_args).is_err());
@@ -126,7 +94,7 @@ mod tests
assert!(
// Formatting is weird without this comment
parse2::<FactoryMacroArgs>(quote! {
- async = true, threadsafe = false, async = true
+ threadsafe = true, threadsafe = true
})
.is_err()
);
@@ -134,7 +102,7 @@ mod tests
assert!(
// Formatting is weird without this comment
parse2::<FactoryMacroArgs>(quote! {
- async = true, threadsafe = false, async = false
+ threadsafe = true, threadsafe = false
})
.is_err()
);
diff --git a/macros/src/lib.rs b/macros/src/lib.rs
index b11186e..e9aaeb0 100644
--- a/macros/src/lib.rs
+++ b/macros/src/lib.rs
@@ -253,7 +253,6 @@ pub fn injectable(args_stream: TokenStream, input_stream: TokenStream) -> TokenS
///
/// # Flags
/// - `threadsafe` - Mark as threadsafe.
-/// - `async` - Mark as async. Infers the `threadsafe` flag.
///
/// # Examples
/// ```
@@ -294,22 +293,12 @@ pub fn factory(args_stream: TokenStream, input_stream: TokenStream) -> TokenStre
let FactoryMacroArgs { flags } = parse(args_stream).unwrap_or_abort();
- let mut is_threadsafe = flags
+ let is_threadsafe = flags
.iter()
.find(|flag| flag.name() == "threadsafe")
.map_or(Ok(false), MacroFlag::get_bool)
.unwrap_or_abort();
- let is_async = flags
- .iter()
- .find(|flag| flag.name() == "async")
- .map_or(Ok(false), MacroFlag::get_bool)
- .unwrap_or_abort();
-
- if is_async {
- is_threadsafe = true;
- }
-
let FactoryTypeAlias {
type_alias,
factory_interface,