Rust过程宏入门系列

写于2022年1月15日。


本系列文章写于2021年1月,最早于知乎发表。当时正初学Rust,选取了看起来比较有意思的过程宏入手。与之前学过的C++宏的预处理文本替换机制不同,Rust的过程宏提供了在AST(抽象语法树)层次上操作源代码的方式,自由度较高。但局限是也仅限于AST层次,无法获得类型信息。因此过程宏也仅仅只是一种生成代码的方式,但不能成为元编程的手段。

由于过程宏在后来的编程实践中很少用到,因此本系列很可能再也不会更新了。但无论如何,本文用到的dtolnay/proc-macro-workshop仓库都可以作为很好的过程宏入门资料。

附知乎原文链接: