X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Fmisc%2FDemo.java;h=5c15980ae11160ddc1f7af2c4d22d4320abfe412;hb=e2df2c799902dadbc9ebe907ab80e099ac3571e6;hp=dbe62666eea7a2def2f2664eb76da1edcfc68bf1;hpb=80a840adb5df31ba5edd20ecac23086ad09a5ca1;p=sbp.git diff --git a/src/edu/berkeley/sbp/misc/Demo.java b/src/edu/berkeley/sbp/misc/Demo.java index dbe6266..5c15980 100644 --- a/src/edu/berkeley/sbp/misc/Demo.java +++ b/src/edu/berkeley/sbp/misc/Demo.java @@ -225,8 +225,8 @@ public class Demo { } public abstract Object plant(Object[] fields, int[] map); public boolean isRaw() { return false; } - public Object invokeRaw(Iterable t) { return null; } - public class TargetReducer implements Functor,Object> { + public Object invokeRaw(Iterable> t) { return null; } + public class TargetReducer implements Tree.TreeFunctor { private Production p; private int[] map; private String name; @@ -236,12 +236,12 @@ public class Demo { this.name = name; } public String toString() { return name; } - public Object invoke(Iterable t) { + public Object invoke(Iterable> t) { if (isRaw()) return invokeRaw(t); ArrayList ret = new ArrayList(); for(Tree tc : t) { if (tc.head() != null && tc.head() instanceof Functor) - ret.add(((Functor,Object>)tc.head()).invoke(tc.children())); + ret.add(((Tree.TreeFunctor)tc.head()).invoke(tc.children())); else if (tc.numChildren() == 0) ret.add(tc.head()); else { @@ -374,7 +374,7 @@ public class Demo { return ret; } public boolean isRaw() { return _method.isAnnotationPresent(raw.class); } - public Object invokeRaw(Iterable t) { + public Object invokeRaw(Iterable> t) { try { return _method.invoke(null, new Object[] { t }); } catch (Exception e) { @@ -465,7 +465,7 @@ public class Demo { } public static Union make(Tree t, String s) { return make(t, s, new ReflectiveMeta()); } public static Union make(Tree t, String s, ReflectiveMeta rm) { - Functor,Object> red = (Functor,Object>)t.head(); + Tree.TreeFunctor red = (Tree.TreeFunctor)t.head(); MG.Grammar g = (MG.Grammar)red.invoke(t.children()); Context cx = new Context(g,rm); Union u = null; @@ -765,7 +765,7 @@ public class Demo { } public Context(Tree t, ReflectiveMeta rm) { this.rm = rm; - Functor,Object> red = (Functor,Object>)t.head(); + Tree.TreeFunctor red = (Tree.TreeFunctor)t.head(); this.grammar = (MG.Grammar)red.invoke(t.children()); } public Union peek(String name) { return map.get(name); }