fix javadoc generation
[sbp.git] / src / edu / berkeley / sbp / misc / CommandLine.java
1 // Copyright 2006-2007 all rights reserved; see LICENSE file for BSD-style license
2
3 package edu.berkeley.sbp.misc;
4
5 import edu.berkeley.sbp.*;
6 import edu.berkeley.sbp.misc.*;
7 import edu.berkeley.sbp.meta.*;
8 import edu.berkeley.sbp.chr.*;
9 import java.io.*;
10
11 public class CommandLine {
12     public static void main(String[] argv) throws Throwable {
13         String grammarFile = argv[0];
14         String targetFile = argv[1];
15         ByteArrayOutputStream baos = new ByteArrayOutputStream();
16         try {
17             System.setErr(new PrintStream(baos));
18             Tree<String> res = new CharParser(MetaGrammar.getMetaGrammar()).parse(new FileInputStream(grammarFile)).expand1();
19             Union meta = GrammarAST.buildFromAST(res, "s", null);
20             CharInput input = new CharInput(new FileInputStream(targetFile), "", true);
21             Tree ret = new CharParser(meta).parse(input).expand1();
22             if (ret==null) throw new NullPointerException("CharParser returned null");
23             System.out.println(ret);
24             System.exit(0);
25         } catch (Throwable e) {
26             e.printStackTrace();
27             System.out.println(new String(baos.toByteArray()));
28             System.exit(-1);
29         }
30     }
31 }