Compiler Construction with ANTLR and Java
By Gary L. Schaps
Dr. Dobb's Journal March 1999
// import directive importDirective // init-action {File f=null; String str=null;} // rule : "import" str=fileName // semantic actions { f = new File(str); KPLLexer lexer = null; lexer = new KPLLexer(new FileInputStream(f)); parser = new KPLParser(lexer); // this file's either another pattern file ... if (str.substring(str.length()-4).equals(".kpl")) { parser.compilationUnit(); }else{ // ... or else it's a test program program ... parser.testProgram(); } } ;
Example 3: ANTLR rule for discriminating import directive.
Copyright © 1999, Dr. Dobb's Journal