我希望为现有语言创建一个 JavaScript 解析器,该语言目前具有笨拙的“手工”C# 和 Java 解析器。我想使用 Jison,并且一直在尝试学习 Bison 的基础知识。
一个我不确定如何回答的问题是 Bison/Jison 的输出到底是什么?我会自动获得任何东西(例如 AST)吗?或者是编写野牛文件的人使用规则操作完成的一切。例如,如果我有一个规则指定一个符合规则的新变量赋值:
变量声明:VAR 变量声明列表 ';'
我是否必须指定要在生成的 javascript 文件中运行的操作,例如 { var var1 = {name: $1, value: $2 } Jison 来实际创建新变量?还是我弄错了。
谢谢!