checkpoint
[sbp.git] / src / edu / berkeley / sbp / meta / MetaGrammar.java
similarity index 97%
rename from src/edu/berkeley/sbp/misc/MetaGrammar.java
rename to src/edu/berkeley/sbp/meta/MetaGrammar.java
index 2917f7b..2e5fd95 100644 (file)
@@ -1,7 +1,8 @@
-package edu.berkeley.sbp.misc;
+package edu.berkeley.sbp.meta;
 import edu.berkeley.sbp.util.*;
 import edu.berkeley.sbp.*;
 import edu.berkeley.sbp.chr.*;
 import edu.berkeley.sbp.util.*;
 import edu.berkeley.sbp.*;
 import edu.berkeley.sbp.chr.*;
+import edu.berkeley.sbp.misc.*;
 import edu.berkeley.sbp.bind.*;
 import java.util.*;
 import java.lang.annotation.*;
 import edu.berkeley.sbp.bind.*;
 import java.util.*;
 import java.lang.annotation.*;
@@ -168,11 +169,8 @@ public class MetaGrammar {
         public Target(Bindable b) { this._bindable = b; }
 
         public String getName() { return _bindable.getSimpleName(); }
         public Target(Bindable b) { this._bindable = b; }
 
         public String getName() { return _bindable.getSimpleName(); }
-        public bind getBind() {
-            return (bind)_bindable.getAnnotation(bind.class); }
-        public bind.as getBindAs() {
-            return (bind.as)_bindable.getAnnotation(bind.as.class); }
-        //public nonterminal getNonTerminal() { return (nonterminal)_bindable.getAnnotation(bind.as.class); }
+        public bind getBind() { return (bind)_bindable.getAnnotation(bind.class); }
+        public bind.as getBindAs() { return (bind.as)_bindable.getAnnotation(bind.as.class); }
         public String toString() { return _bindable.getSimpleName(); }
         public boolean isRaw() { return _bindable.isAnnotationPresent(bind.raw.class); }
 
         public String toString() { return _bindable.getSimpleName(); }
         public boolean isRaw() { return _bindable.isAnnotationPresent(bind.raw.class); }
 
@@ -316,8 +314,7 @@ public class MetaGrammar {
         public static @bind class Grammar {
             public NonTerminal get(String s) {
                 for(NonTerminal nt : nonterminals)
         public static @bind class Grammar {
             public NonTerminal get(String s) {
                 for(NonTerminal nt : nonterminals)
-                    if (nt.name.equals(s))
-                        return nt;
+                    if (nt.name.equals(s)) return nt;
                 return null;
             }
             public @bind.arg NonTerminal[] nonterminals;
                 return null;
             }
             public @bind.arg NonTerminal[] nonterminals;
@@ -351,8 +348,8 @@ public class MetaGrammar {
         }
         public static class NonTerminal extends Un {
             public String  name = null;
         }
         public static class NonTerminal extends Un {
             public String  name = null;
-            public @bind.as("NonTerminal") NonTerminal(@bind.arg("Word") String name,
-                                         @bind.arg("RHS") Seq[][] sequences) {
+            public @bind NonTerminal(@bind.arg("Word") String name,
+                                     @bind.arg("RHS") Seq[][] sequences) {
                 this.name = name;
                 this.sequences = sequences;
             }
                 this.name = name;
                 this.sequences = sequences;
             }