是否有一个版本的Javacc输出javascript代码?

时间:2012-10-24 11:03:31

标签: java javascript parsing antlr javacc

我正在寻找一个接受Javacc语法文件(.jj)并使用Javascript(而不是Java)生成解析器的解析器生成器。这样的事情存在吗?或者将.jj文件转换为ANTLR(可以输出Javascript)可以理解的东西有多难?

4 个答案:

答案 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)

JavaCC 6.1 Development Build

答案 3 :(得分:0)

如果您不介意重写语法, 我已经用Kotlin通用代码编写了一个解析器构建器,因此它将在JavaScript平台上运行。

语法语法非常简单,类似于EBNF。

您可以在此处查看详细信息,如果想要尝试,可以在浏览器中找到一个演示的链接。

https://medium.com/@dr.david.h.akehurst/a-kotlin-multi-platform-parser-usable-from-a-jvm-or-javascript-59e870832a79