ANTLR4不会在Mac Os x上的Eclipse中显示任何内容

时间:2016-02-12 18:32:22

标签: java eclipse parsing antlr4

我正在研究“The Definitive ANTLR 4 Reference”一书,我正在尝试运行ArrayInit.g4示例。我已经提供了必要的一切,但是当我运行示例并将值输入控制台时,没有任何反应(第29和30页)。

这是语法:

grammar ArrayInit;

init : '{' value ( ',' value)* '}';

value : init      | INT       ;
       INT : [0-9]+ ; WS : [ \t\r\n]+ -> skip ; // skip spaces, tabs, newlines

这是Test.java

import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.tree.*;

public class Test {

    public static void main(String[] args) throws Exception {

        ANTLRInputStream input = new ANTLRInputStream(System.in);

        ArrayInitLexer lexer = new ArrayInitLexer(input);

        CommonTokenStream tokens = new CommonTokenStream(lexer);

        ArrayInitParser parser = new ArrayInitParser(tokens);

        ParseTree tree = parser.init();

        System.out.println(tree.toStringTree(parser));


    }
}

给定输入为:{1,{2,3},4}

预期输出为:(init {(值1),(值(init {(值2),(值3)})),(值4)})

0 个答案:

没有答案