wiggle::async_trait is defined as async_trait::async_trait(?Send)

async methods used by wiggle currently need to Not have the Send
constraint, so rather than make all use sites pass the argument
to the re-exported async_trait macro, define a new macro that
applies the argument.
This commit is contained in:
Pat Hickey
2021-03-29 10:04:42 -07:00
parent b1a3c9047f
commit e38166ac3f
7 changed files with 25 additions and 10 deletions

View File

@@ -89,8 +89,7 @@ pub fn define_module_trait(names: &Names, m: &Module, settings: &CodegenSettings
});
quote! {
use #rt::async_trait;
#[async_trait(?Send)]
#[#rt::async_trait]
pub trait #traitname {
#(#traitmethods)*
}