纲要

  • 理解派生宏和属性宏之间的区别
  • 在抽象语法树中查找字段信息
  • 使用匹配检索字段
  • 使用自定义结构体检索字段
  • 使用自定义结构体和解析实现检索字段
  • 在 quote 中添加多个输出
  • 使用 log 语句调试宏

基本使用

  1. 创建一个新目录(make-public),其中包含另一个目录(make-public-macro)
  2. 在 make-public-macro 目录中,运行 cargo init —lib 来初始化
  3. cargo add syn quote,and set lib to proc-macro = true

过程宏:Attribute macros - 图1

过程宏:Attribute macros - 图2

过程宏:Attribute macros - 图3

过程宏:Attribute macros - 图4

过程宏:Attribute macros - 图5