0
我想在ANTLR中为C#语言设计编译器。但我不完全理解应该采取的步骤的正确顺序。ANTLR,步骤顺序
这就是我看待它:
- 首先我定义词法令牌
- 然后语法规则(与重写规则建立AST)用行动是收集有关的类和方法的声明信息(这样我可以在下一步中解析方法调用)
- 最后,我创建了遍历AST树并调用生成(虚拟)机器语言操作码的规则的“树语法”。
这是正确的吗?第二步是读取方法的声明和构建AST?
如何解决没有构建AST的重载方法的声明? (backpatching?)