content!() { /* proc-macro */ }Expand description
A wrapper for code with common maybe parameters
The content macro allows you to specify common parameters for many maybe macros. Use the
internal default attribute with the required parameters inside the content macro.
maybe_async_cfg2::content! {
#![maybe_async_cfg2::default(
idents(Foo, Bar),
)]
#[maybe_async_cfg2::maybe(sync(feature="use_sync"), async(feature="use_async"))]
struct Struct {
f: Foo,
}
#[maybe_async_cfg2::maybe(sync(feature="use_sync"), async(feature="use_async"))]
async fn func(b: Bar) {
todo!()
}
} // content!After conversion:
#[cfg(feature = "use_sync")]
struct StructSync {
f: FooSync,
}
#[cfg(feature = "use_async")]
struct StructAsync {
f: FooAsync,
}
#[cfg(feature = "use_sync")]
fn func_sync(b: BarSync) {
todo!()
}
#[cfg(feature = "use_async")]
async fn func_async(b: BarAsync) {
todo!()
}