重用Lua解析器的最佳方法是什么?

What is the best way to reuse the Lua parser?

本文关键字:最佳 方法 是什么 Lua 重用      更新时间:2023-10-16

我知道如何在其他语言中嵌入Lua,但我想重用只有解析器来解析代码,并给我的结果作为AST的例子。在Lua平台上实现这一目标的最简单方法是什么?

谢谢!

已经有人为Lua语言编写了ANTLR语法:

http://www.antlr3.org/grammar/1178608849736/Lua.g

或者如果你使用ANTLR v4:

https://github.com/antlr/grammars-v4/blob/master/lua/Lua.g4

我在几个项目中使用了ANTLR,效果很好。如果您要求,它将生成C (ANTLR v3)或c++ (ANTLR v2)解析器,包括AST生成。