Antlr4如何为语法构建API

时间:2016-08-05 17:11:20

标签: java parsing antlr4

我有一个简单的语法,如 hello (来自antlr网站),然后是自动生成的java代码。 最后,为了测试语法,我添加了以下内容:

public static void main( String[] args) throws Exception 
  {
    HelloLexer lexer = new HelloLexer( new ANTLRInputStream("hello world"));
    CommonTokenStream tokens = new CommonTokenStream( lexer );
    HelloParser parser = new HelloParser( tokens );
    ParseTree tree = parser.r();
    System.out.println(tree.toStringTree(parser));
  }

一切都很好。

正如我们所看到的,输入是由" hello world "等字符串构成的。 ,但我的目标是为某种语法提供API 。所以,我想知道是否有办法通过java类提供输入,例如代替write" hello world",我想把一个像MyGrammarExpression这样的java类组成通过语法的组件(如OWLAPI中的OWLExpression)然后正常解析。 ANTLR4是否提供了一种方法?有什么建议吗?

0 个答案:

没有答案