per*_*mil 3 programming-languages rust
过程宏和语法宏有什么区别?Rust 将其宏系统称为过程宏,但我见过语言文章将像 rust 宏系统这样的系统称为语法宏。语法宏在解析时似乎可以访问全部或部分 AST。这似乎就是 Rust 所拥有的。
kmd*_*eko 5
Rust 宏是语法性的;他们在 AST 级别上工作。
Rust 有两种类型的宏,它们的编写方式和使用方式有所不同,这可能会让您在术语上感到困惑。有一些声明性宏(也称为“示例宏”)是通过调用macro_rules!. 还有过程宏,它们被编写为将TokenStreams 作为输入和输出处理的函数(可以用作属性、派生或类似函数)。
macro_rules!
TokenStream
也可以看看:
归档时间:
3 年,9 月 前
查看次数:
1110 次
最近记录: