4 import java.io.BufferedReader;
5 import java.io.FileReader;
7 /* Test skeleton for java parser/lexer.
8 * Copyright (C) 1998 C. Scott Ananian <cananian@alumni.princeton.edu>
9 * This is released under the terms of the GPL with NO WARRANTY.
10 * See the file COPYING for more details.
14 public static void main(String args[]) throws Exception {
15 Reader fr = new BufferedReader(new FileReader(args[0]));
16 // the integer in the next line specifies the java minor version.
17 // for example, for a java 1.0 lexer specify '0'
18 // for a java 1.1 lexer specify '1'
20 // As far as the lexer's concerned, 'strictfp' was added in Java 1.2,
21 // 'assert' in Java 1.4, and we need a "lookahead <" token PLT
22 // to correctly parse Java 1.5.
23 int java_minor_version = 5;
24 if (args.length>1) java_minor_version = Integer.parseInt(args[1]);
25 Lex.Lexer l = new Lex.Lexer(fr, java_minor_version);
26 java_cup.runtime.lr_parser g;
27 switch (java_minor_version) {
29 case 5: g = new Parse.Grm15(l); break;
30 case 4: g = new Parse.Grm14(l); break;
32 case 2: g = new Parse.Grm12(l); break;
33 case 1: g = new Parse.Grm11(l); break;
34 case 0: g = new Parse.Grm10(l); break;
37 System.exit(l.numErrors());