23 个版本

0.8.3 2024 年 7 月 8 日
0.8.0 2023 年 11 月 16 日
0.7.1 2023 年 5 月 21 日
0.7.0 2023 年 3 月 31 日
0.5.1 2022 年 6 月 19 日

#180过程宏

Download history 60730/week @ 2024-05-04 74943/week @ 2024-05-11 72096/week @ 2024-05-18 76780/week @ 2024-05-25 90361/week @ 2024-06-01 89399/week @ 2024-06-08 76900/week @ 2024-06-15 76166/week @ 2024-06-22 81055/week @ 2024-06-29 88198/week @ 2024-07-06 90643/week @ 2024-07-13 90055/week @ 2024-07-20 87716/week @ 2024-07-27 82220/week @ 2024-08-03 107835/week @ 2024-08-10 120509/week @ 2024-08-17

416,321 每月下载量
用于 262 个 crates (9 直接)

MIT 许可证

13KB
96

quote! 中使用 use 语句

Crates.io Version CI Docs.rs Documentation

描述

一个宏,用于简化在 quote! 宏中使用类型。

用法

quote_use! 宏可以像 quote! 一样使用,但增加了在顶部添加 use 语句的功能

quote_use!{
    use std::fs::read;
    
    read("src/main.rs")
}

这将扩展为使用 quote! 的等效语句

quote!{
    ::std::fs::read::read("src/main.rs")
}

引言

这也允许直接使用 rust 引言的内容

quote_use!{
    Some("src/main.rs")
}

覆盖引言

当您想使用自己的类型而不是引言类型时,可以通过如下方式简单地导入它来实现

quote_use!{
    use anyhow::Result;
                                                                                                             
    Result
}

不同的引言

默认情况下,quote_use! 使用 std 引言2021 版本,但可以通过功能进行配置,甚至可以完全禁用。

其他 quote 宏

还有来自 synquote 的其他引用宏的变体

自动命名空间标识符

Span::def_site 稳定之前,例如在 proc-macro 扩展中的 let 绑定中的标识符可能会与常量等冲突。

为了避免这种情况,您可以启用功能 namespace_idents,这将使用模式 "__{crate_name}_{ident}" 将所有标识符替换为自动命名空间的标识符。

依赖关系

~0.4–0.9MB
~21K SLoC