我正在寻找一个接受Javacc语法文件(.jj)并使用Javascript(而不是Java)生成解析器的解析器生成器。这样的事情存在吗?或者将.jj文件转换为ANTLR(可以输出Javascript)可以理解的东西有多难?
答案 0 :(得分:3)
我正在寻找一个接受Javacc语法文件(.jj)并使用Javascript(而不是Java)生成解析器的解析器生成器。这样的事情存在吗?
显然,没有。
将.jj文件转换为ANTLR(可以输出Javascript)可以理解的内容有多难?
这将是非平凡的,你需要手工完成。但实际的难度可能取决于你试图转换的语法。
值得注意的是,还有其他解析器生成器在Javascript中输出解析器。 (而且,不,我不打算列出或推荐一个!)
显然,输入语言与Javacc输入不同。
答案 1 :(得分:1)
Google的GWT将Java代码编译为JavaScript,只要只使用JDK的特定子集即可。我也不确定它带来了多少GWT特定的残余。但这可能是一种可能性:使用javacc生成java代码,然后使用GWT将其转换为JavaScript。
答案 2 :(得分:0)
我最近添加了对JavaCC的GWT兼容解析器目标的支持(不依赖于Java IO类)。我最近写了一篇关于如何使用JavaCC的博客,以便可以通过GWT生成JavaScript解析器。链接如下:
Building parsers for the web with JavaCC & GWT (My blog post)
答案 3 :(得分:0)
如果您不介意重写语法, 我已经用Kotlin通用代码编写了一个解析器构建器,因此它将在JavaScript平台上运行。
语法语法非常简单,类似于EBNF。
您可以在此处查看详细信息,如果想要尝试,可以在浏览器中找到一个演示的链接。