#caller #proc-macro #proc-macro-attributes #docs #modpath #module-path #caller-modpath

caller_modpath_macros

caller_modpath 的 proc_macro

2 个版本

0.1.1 2021 年 3 月 13 日
0.1.0 2021 年 3 月 13 日

#15#caller


用于 caller_modpath

MIT/Apache 许可

5KB

caller_modpath

crates.io docs.rs

这个 crate 允许在 #[proc_macro_attribute] 中获取调用者的模块路径。

更多信息,请参阅 文档

示例

最简单的示例如下

#[caller_modpath::expose_caller_modpath]
#[proc_macro_attribute]
pub fn test(_attr: TokenStream, _input: TokenStream) -> TokenStream {
    let modpath: String = proc_macro::Span::caller_modpath();
    // now do something with it. For example, just panic to have the compiler display the result:
    panic!(
        "module path of call site: {}",
        modpath
    );
}

依赖

~1.5MB
~36K SLoC