From: adam Date: Sun, 16 Jul 2006 08:00:12 +0000 (-0400) Subject: checkpoint X-Git-Tag: tag_for_25-Mar~118 X-Git-Url: http://git.megacz.com/?p=sbp.git;a=commitdiff_plain;h=189d68c64f7aaec90b7cdef0fb2c358fe4f0dd21;ds=sidebyside checkpoint darcs-hash:20060716080012-5007d-ecd361739477c986b21a743c1c51036cac4aaf95.gz --- diff --git a/src/edu/berkeley/sbp/chr/CharRange.java b/src/edu/berkeley/sbp/chr/CharAtom.java similarity index 63% rename from src/edu/berkeley/sbp/chr/CharRange.java rename to src/edu/berkeley/sbp/chr/CharAtom.java index 78f2057..c0df627 100644 --- a/src/edu/berkeley/sbp/chr/CharRange.java +++ b/src/edu/berkeley/sbp/chr/CharAtom.java @@ -8,22 +8,22 @@ import edu.berkeley.sbp.util.*; import edu.berkeley.sbp.misc.*; import edu.berkeley.sbp.Input.Location; -public class CharRange extends Atom { +public class CharAtom extends Atom { - public CharRange(char a) { this(a,a); } - public CharRange(char a, char b) { this(new CharTopology(a, b)); } - public CharRange(CharTopology t) { this.t = t; } + public CharAtom(char a) { this(a,a); } + public CharAtom(char a, char b) { this(new CharTopology(a, b)); } + public CharAtom(CharTopology t) { this.t = t; } private CharTopology t; public Topology top() { return t; } public static final char left = (char)9998; public static final char right = (char)9999; - public static final Atom leftBrace = new CharRange(left,left) { public String toString() { return "[{]"; } }; - public static final Atom rightBrace = new CharRange(right,right) { public String toString() { return "[}]"; } }; - public static final Atom braces = new CharRange(left,right) { public String toString() { return "[{}]"; } }; + public static final Atom leftBrace = new CharAtom(left,left) { public String toString() { return "[{]"; } }; + public static final Atom rightBrace = new CharAtom(right,right) { public String toString() { return "[}]"; } }; + public static final Atom braces = new CharAtom(left,right) { public String toString() { return "[{}]"; } }; - public static Atom set(Range.Set r) { return new CharRange(new CharTopology(r)); } + public static Atom set(Range.Set r) { return new CharAtom(new CharTopology(r)); } public String toString() { return t.toString(); } @@ -35,13 +35,13 @@ public class CharRange extends Atom { Element ret; if (share && s.length() == 1) { ret = - new CharRange(s.charAt(0)) { + new CharAtom(s.charAt(0)) { public String toString() { return escapified; } }; } else { Union ret2 = new Union("\""+s+"\"_str", true) { public String toString() { return escapified; } }; Element[] refs = new Element[s.length()]; - for(int i=0; i)Atom.toAtom(e).complement().minus(CharRange.braces)); + return infer((Topology)Atom.toAtom(e).complement().minus(CharAtom.braces)); } }; } public static @bind.as("Word") String word(String s) { return s; } @@ -375,7 +375,7 @@ public class MetaGrammarBindings extends AnnotationGrammarBindings { public static @bind.as("\r") String lf() { return "\r"; } static Atom infer(Element e) { return infer((Topology)Atom.toAtom(e)); } - static Atom infer(Topology t) { return new CharRange(new CharTopology(t)); } + static Atom infer(Topology t) { return new CharAtom(new CharTopology(t)); } public static class Context { public HashMap map = new HashMap(); diff --git a/src/edu/berkeley/sbp/tib/Tib.java b/src/edu/berkeley/sbp/tib/Tib.java index 64acbbf..0237e64 100644 --- a/src/edu/berkeley/sbp/tib/Tib.java +++ b/src/edu/berkeley/sbp/tib/Tib.java @@ -45,8 +45,8 @@ public class Tib implements Input { public Input.Location getLocation() { return new Cartesian.Location(_col, _row); } private BufferedReader br; - char left = CharRange.left; - char right = CharRange.right; + char left = CharAtom.left; + char right = CharAtom.right; boolean waiting = false; char waitingChar = ' '; @@ -149,11 +149,11 @@ public class Tib implements Input { u2.add(Sequence.singleton(new Element[] { u }, 0)); return anonymousNonTerminal(new Sequence[][] { new Sequence[] { - Sequence.singleton(new Element[] { CharRange.leftBrace, + Sequence.singleton(new Element[] { CharAtom.leftBrace, ws, u2, ws, - CharRange.rightBrace + CharAtom.rightBrace }, 2) } });