X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Ftib%2FTibDoc.java;h=705ac3e303d1411eebbf31e8a23737f6c5d167cf;hp=f3195eca34374c014331a19c6a6db34e84222f7c;hb=45d799349e635f1a99e3974e4504a43d5a7aaf33;hpb=95c87aa402977de2b96c48bd14c439b46ad49777 diff --git a/src/edu/berkeley/sbp/tib/TibDoc.java b/src/edu/berkeley/sbp/tib/TibDoc.java index f3195ec..705ac3e 100644 --- a/src/edu/berkeley/sbp/tib/TibDoc.java +++ b/src/edu/berkeley/sbp/tib/TibDoc.java @@ -12,22 +12,49 @@ import java.io.*; public class TibDoc { + public static class Doc { + public Header head; + public Body body; + } + public static class kv { public String key; public Text[] val; } + public static class Header { + public void attrs(kv[] kvs) { + for(int i=0; i res = new CharParser(MetaGrammar.make()).parse(new FileInputStream(s[0])).expand1(); - MetaGrammar gram = (MetaGrammar)new Tib.Grammar().walk(res); + MetaGrammar gram = new Tib.Grammar(TibDoc.class); + gram = (MetaGrammar)gram.walk(res); //System.out.println(gram); Union mg = gram.done(); System.out.println("\nparsing " + s[1]); Forest f = new CharParser(mg).parse(new Tib(new FileInputStream(s[1]))); - + //((Tree)new StringifyWalker().walk(f.expand1())).toPrettyString() System.out.println(); - System.out.println(f); - System.out.println(); - System.out.println(((Tree)new StringifyWalker().walk(f.expand1())).toPrettyString()); - + Doc doc = (Doc)new ReflectiveGrammar(TibDoc.class).build(f.expand1()); + System.out.println(doc); + /* String st = new HTMLWalker().walk(f.expand1()).toString(); System.out.println(st); FileOutputStream fos = new FileOutputStream("out.html"); @@ -35,6 +62,7 @@ public class TibDoc { p.println(st); p.flush(); p.close(); + */ } catch (Ambiguous a) { FileOutputStream fos = new FileOutputStream("/Users/megacz/Desktop/out.dot"); PrintWriter p = new PrintWriter(new OutputStreamWriter(fos)); @@ -43,6 +71,7 @@ public class TibDoc { gv.dump(p); p.flush(); p.close(); + a.printStackTrace(); } catch (Exception e) { e.printStackTrace(); @@ -79,6 +108,7 @@ public class TibDoc { public String ul(String[] li) { return ""; } public String ol(String[] li) { return "
    "+join(li,"")+"
"; } public String hr() { return "\n
\n"; } + public String br() { return "\n
\n"; } public String it(Object o) { return ""+o+""; } public String tt(Object o) { return ""+o+""; } public String underline(Object o) { return ""; }