checkpoint
authoradam <adam@megacz.com>
Sun, 15 Jan 2006 08:58:47 +0000 (03:58 -0500)
committeradam <adam@megacz.com>
Sun, 15 Jan 2006 08:58:47 +0000 (03:58 -0500)
darcs-hash:20060115085847-5007d-faf476557005f626ea25e671e9aba1d0fd7c00ec.gz

src/edu/berkeley/sbp/misc/CharToStringParser.java
src/edu/berkeley/sbp/misc/CharToken.java
src/edu/berkeley/sbp/misc/RegressionTests.java

index 4dae33b..802d689 100644 (file)
@@ -12,6 +12,9 @@ public class CharToStringParser extends Parser<CharToken,String> {
     public Forest<String> parse(InputStream is) throws IOException, ParseFailed {
         return super.parse(new CharToken.Stream(is));
     }
+    public Forest<String> parse(Reader r) throws IOException, ParseFailed {
+        return super.parse(new CharToken.Stream(r));
+    }
     public Forest<String> shiftToken(CharToken ct, Location loc) {
         return Forest.create(loc, ct.result(), null, false, false);
     }
index 51ffc9a..9067d14 100644 (file)
@@ -25,7 +25,7 @@ public class CharToken implements IntegerMappable {
     public static final CharToken left       = new CharToken((char)9998);
     public static final CharToken right      = new CharToken((char)9999);
     
-     static final Range.Set all = new Range.Set(new Range(0, Character.MAX_VALUE));
+    static final Range.Set all = new Range.Set(new Range(0, Character.MAX_VALUE));
     public  static final Atom      any = new CharRange(new IntegerTopology<CharToken>(all));
     public  static final Atom     none = new CharRange(new IntegerTopology<CharToken>());
     public static IntegerTopology<CharToken> range(Range r) { return new IntegerTopology<CharToken>(r); }
index f093e43..b972564 100644 (file)
@@ -58,14 +58,12 @@ public class RegressionTests {
     }
 
     public static class TestCase {
-        private final Token.Stream inp;
-        public final String input;
+        private final boolean tib;
+        public final String input;        
         public final String[] output;
         public final Union grammar;
         public TestCase(String input, String[] output, Union grammar, boolean tib) throws IOException {
-            this.inp = tib
-                ? new Tib(input)
-                : new CharToken.Stream(new StringReader(input), input.indexOf('\n')==-1?"\""+input+"\": ":"");
+            this.tib = tib;
             this.input = input;
             this.output = output;
             this.grammar = grammar;
@@ -80,7 +78,9 @@ public class RegressionTests {
             Forest<String> res = null;
             ParseFailed pfe = null;
             try {
-                res = new CharToStringParser(grammar).parse(inp);
+                res = tib 
+                ? new CharToStringParser(grammar).parse(new Tib(input))
+                : new CharToStringParser(grammar).parse(new StringReader(input));
             } catch (ParseFailed pf) {
                 pfe = pf;
             }