diff options
Diffstat (limited to 'src/func.rs')
| -rw-r--r-- | src/func.rs | 27 |
1 files changed, 1 insertions, 26 deletions
diff --git a/src/func.rs b/src/func.rs index 33deb1d..2407f3e 100644 --- a/src/func.rs +++ b/src/func.rs @@ -4,32 +4,7 @@ use syn::{ItemFn, parse_macro_input}; use crate::args::FuncArgs; -/// Attribute macro that generates both a sync and an async version of a function, -/// gated by a Cargo feature flag. -/// -/// # Usage -/// -/// ```ignore -/// /// Doc comments are preserved -/// #[might_be_async::func] -/// pub fn my_function<T: Clone>(arg: T) -> ReturnType -/// where T: Debug -/// { -/// // body — written as a regular (non-async) function -/// } -/// ``` -/// -/// Expands to: -/// - `#[cfg(not(feature = "async"))] fn my_function(...)` — sync version -/// - `#[cfg(feature = "async")] async fn my_function(...)` — async version -/// -/// An explicit feature name can be provided: -/// -/// ```ignore -/// #[might_be_async::func("tokio_rt")] -/// pub fn my_function() { ... } -/// ``` -pub fn func(attr: TokenStream, item: TokenStream) -> TokenStream { +pub(crate) fn func(attr: TokenStream, item: TokenStream) -> TokenStream { let args = parse_macro_input!(attr as FuncArgs); let feature_name = &args.feature_name; |
