From 9406152ce9e037b07b6b832b1535d17ee6aefa45 Mon Sep 17 00:00:00 2001 From: adam Date: Sun, 15 Oct 2006 01:08:23 -0400 Subject: [PATCH] resolved some conflicts, added CommandLine darcs-hash:20061015050823-5007d-16f6013ba6fa7ac236b35e102d500015c15b381f.gz --- Makefile | 3 +- src/edu/berkeley/sbp/misc/Cartesian.java | 2 +- src/edu/berkeley/sbp/misc/CommandLine.java | 43 ++++++++++++++++++++++++++ src/edu/berkeley/sbp/misc/ParserServlet.java | 14 +++++---- 4 files changed, 54 insertions(+), 8 deletions(-) create mode 100644 src/edu/berkeley/sbp/misc/CommandLine.java diff --git a/Makefile b/Makefile index f0537d0..75d88af 100644 --- a/Makefile +++ b/Makefile @@ -85,7 +85,8 @@ boot: edu.berkeley.sbp.jar edu.berkeley.sbp.jar: $(shell find src -name \*.java) mkdir -p bin javac -cp javax.servlet.jar -d bin -sourcepath src $^ - cd bin; jar cf ../$@ . + echo 'Main-Class: edu.berkeley.sbp.misc.CommandLine' > bin/manifest + cd bin; jar cmf manifest ../$@ . #-Xlint:unchecked javadoc: rm -rf doc/api diff --git a/src/edu/berkeley/sbp/misc/Cartesian.java b/src/edu/berkeley/sbp/misc/Cartesian.java index 1bac161..5f5b739 100644 --- a/src/edu/berkeley/sbp/misc/Cartesian.java +++ b/src/edu/berkeley/sbp/misc/Cartesian.java @@ -32,7 +32,7 @@ public class Cartesian { long now = System.currentTimeMillis(); if (now-then > 10) { then = now; - //System.out.print(s + " \r"); + System.err.print(s + " \r"); } if (isCR()) { line++; diff --git a/src/edu/berkeley/sbp/misc/CommandLine.java b/src/edu/berkeley/sbp/misc/CommandLine.java new file mode 100644 index 0000000..ca9086d --- /dev/null +++ b/src/edu/berkeley/sbp/misc/CommandLine.java @@ -0,0 +1,43 @@ +// Copyright 2006 all rights reserved; see LICENSE file for BSD-style license + +package edu.berkeley.sbp.misc; + +import edu.berkeley.sbp.*; +import edu.berkeley.sbp.misc.*; +import edu.berkeley.sbp.meta.*; +import edu.berkeley.sbp.chr.*; +import java.io.*; + +public class CommandLine { + + public static void main(String[] argv) throws Throwable { + String grammarFile = argv[0]; + String targetFile = argv[1]; + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + try { + System.setErr(new PrintStream(baos)); + Tree res = new CharParser(MetaGrammar.newInstance()).parse(new FileInputStream(grammarFile)).expand1(); + Union meta = Grammar.create(res, "s", + new Grammar.Bindings() { + /* + public Sequence createSequence(Production p) { + Sequence ret = super.createSequence(p); + if (ret != null) return ret; + return Sequence.create(p.nonTerminal, p.elements, p.drops, false); + } + */ + }); + CharInput input = new CharInput(new FileInputStream(targetFile), "", true); + Tree ret = new CharParser(meta).parse(input).expand1(); + if (ret==null) throw new NullPointerException("CharParser returned null"); + System.out.println(ret); + System.exit(0); + } catch (Throwable e) { + e.printStackTrace(); + System.out.println(new String(baos.toByteArray())); + System.exit(-1); + } + } + + +} diff --git a/src/edu/berkeley/sbp/misc/ParserServlet.java b/src/edu/berkeley/sbp/misc/ParserServlet.java index 9eeb7b8..d2f7d39 100644 --- a/src/edu/berkeley/sbp/misc/ParserServlet.java +++ b/src/edu/berkeley/sbp/misc/ParserServlet.java @@ -6,17 +6,19 @@ import edu.berkeley.sbp.*; import edu.berkeley.sbp.chr.*; import java.util.*; import java.io.*; -//import javax.servlet.*; -//import javax.servlet.http.*; +import javax.servlet.*; +import javax.servlet.http.*; +import java.io.*; import java.net.*; import java.util.*; -public class ParserServlet /*extends HttpServlet*/ { - /* +public class ParserServlet extends HttpServlet { + public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException { doPost(req, resp); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException { + /* try { try { System.out.println("a"); @@ -70,7 +72,7 @@ public class ParserServlet /*extends HttpServlet*/ { } catch (Exception e) { throw new ServletException(e); } - - } + */ + } */ } -- 1.7.10.4