copyright notices/updates
[sbp.git] / src / edu / berkeley / sbp / misc / Demo.java
index 566e05d..8315472 100644 (file)
@@ -1,3 +1,5 @@
+// Copyright 2006 all rights reserved; see LICENSE file for BSD-style license
+
 package edu.berkeley.sbp.misc;
 
 import edu.berkeley.sbp.*;
@@ -30,24 +32,23 @@ public class Demo {
         public static @bind.as("/") class Divide   extends BinOp { }
         public static @bind.as("+") class Add      extends BinOp { }
         public static @bind.as("-") class Subtract extends BinOp { }
-
     }
 
 
     // invoke "java -jar edu.berkeley.sbp.jar edu.berkeley.sbp.misc.Demo tests/demo.g <expr>"
     public static void main(String[] s) throws Exception {
 
-        Parser metaGrammarParser   = new CharParser(MetaGrammar.make());
+        Parser metaGrammarParser   = new CharParser(MetaGrammar.newInstance());
         Tree<String> parsedGrammar = metaGrammarParser.parse(new CharInput(new FileInputStream(s[0]))).expand1();
-        GrammarBindingResolver gbr = new AnnotationGrammarBindingResolver(Math.class);
-        Union   mathGrammar        = MetaGrammar.make(parsedGrammar, "Expr", gbr);
+        Grammar.Bindings gbr       = new AnnotationGrammarBindings(Math.class);
+        Union   mathGrammar        = Grammar.create(parsedGrammar, "Expr", gbr);
         Parser  mathParser         = new CharParser(mathGrammar);
 
         System.out.println("about to parse: \""+s[1]+"\"");
         Tree tree = mathParser.parse(new CharInput(new StringReader(s[1]))).expand1();
 
         // below is ugly voodoo which will go away very soon.  ignore it.
-        Tree.TreeFunctor tf = (Tree.TreeFunctor)tree.head();
+        TreeFunctor tf = (TreeFunctor)tree.head();
         Math.Expr e = (Math.Expr)tf.invoke(tree);
         // above is ugly voodoo which will go away very soon.  ignore it.