2015-06-18 58 views
-3

我正在开发一个Scala项目。从Java调用Scala编译器的AST

我可以从一个简单的编译器插件访问Scala编译器中的AST。
而且我也可以编写一个简单的Scala类,并从Java中调用这个Scala类。

有什么办法直接从Java访问AST?

回答

0

不,因为Scala编译器没有Java API(并且,考虑到它写入的样式,基本上不能有一个)。任何其他解析Scala的库也可能用Scala编写。如果您需要初始AST(在所有脱毛,打字等之前),您可以使用例如ANTLR生成一个解析器,但从以下阶段获取任何内容基本上需要重新构建Java中某些Scala编译器的一部分。