1个不稳定版本
0.1.0 | 2021年2月11日 |
---|
在 过程宏 中排名第1891
36KB
882 行
简易过程宏
Rust的最新过程宏crate。
简易过程宏是一个过程宏crate,它允许你创建过程宏而无需为宏创建一个专门的crate。这就是为什么这是Rust的最新过程宏crate。
入门相对简单。只需在任意的宏定义上添加 #[easy_proc_macro::easy_proc_macro]
(或者如果你更喜欢,先导入它),然后,砰!它就变成了一个过程宏。表面上变化不大,但你的宏已经获得了一种 超级能力。
这种超级能力就是令牌操作块!在你的宏中添加一个令牌操作块非常简单。只需写一个带有前置美元符号的正常块,就像它是某种特殊宏语法一样,如下所示; ${/* ... */}
。这些块内的代码将在 编译时 执行,并直接操作Rust的令牌,使你的宏能够做比高级 Ctrl + C
+ Ctrl + V
更多的事情。
在令牌操作块内部访问的令牌将是字符串,允许你随心所欲地修改令牌。令牌操作块解析出的值必须实现 ToString
,或者 String
或 &str
。这个值就是令牌操作块将扩展到的值。
夜间特有功能
这个crate非常注重能够在Rust稳定编译器上编译,但Rust稳定编译器确实有一些无法提供的东西。这就是为什么这些功能只有在启用crate中的nightly
功能并使用夜间编译器时才可用的原因。
更好的错误信息
提供指向实际错误代码的错误信息,而不是过程宏调用。
稳定
夜间
归功于proc_macro_diagnostic
api。
依赖项
~4–13MB
~166K SLoC