ast 包使用指南
什么是 AST?
AST,即抽象语法树。它是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。
并发、反射和 AST 三者是构建复杂系统(中间件)的基石,真正的高级工具。
while b != 0:
if a > b:
a := a - b
else:
b := b - a
return a
开源例子
学习 AST 的目的:
- 篡改源码
- 代码生成:Go 因为本身没有动态代理之类的工具,所以代码生成大行其道,非常流行
例子:
- GORM Gen 子项目 https://github.com/go-gorm/gen
- 依赖注入 Google Wire https://github.com/google/wire
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。