X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2FForest.java;h=e4572ec0d598721017d5ff5a3679e232ee2eb330;hb=a7b84506c2e1ed63343db215f76afced082e2826;hp=917fea588fd1dc37f1bdf02f5b45c72c3e2197c9;hpb=a22c5074e705e3ffcf03e9f9d174aed8ef79fc91;p=sbp.git diff --git a/src/edu/berkeley/sbp/Forest.java b/src/edu/berkeley/sbp/Forest.java index 917fea5..e4572ec 100644 --- a/src/edu/berkeley/sbp/Forest.java +++ b/src/edu/berkeley/sbp/Forest.java @@ -19,10 +19,10 @@ public abstract class Forest { /** expand this forest into a set of trees */ public abstract HashSet> expand(boolean toss); - static Forest singleton(Token.Location loc) { return create(loc, null, new Forest[] { }, false, true); } - static Forest singleton(Token.Location loc, Forest body) { return create(loc, null, new Forest[] { body }, false, true); } - static Forest leaf(Token.Location loc, T tag) { return create(loc, tag, null, false, false); } - public static Forest create(Token.Location loc, T tag, Forest[] tokens, boolean unwrap, boolean singleton) { + static Forest singleton(Input.Location loc) { return create(loc, null, new Forest[] { }, false, true); } + static Forest singleton(Input.Location loc, Forest body) { return create(loc, null, new Forest[] { body }, false, true); } + static Forest leaf(Input.Location loc, T tag) { return create(loc, tag, null, false, false); } + public static Forest create(Input.Location loc, T tag, Forest[] tokens, boolean unwrap, boolean singleton) { return new MultiForest(loc, tag, tokens, unwrap, singleton); } @@ -30,13 +30,13 @@ public abstract class Forest { protected static class Body { - private final Token.Location location; + private final Input.Location location; private final T tag; private final Forest[] tokens; private final boolean unwrap; private final boolean singleton; - private Body(Token.Location loc, T tag, Forest[] tokens, boolean unwrap, boolean singleton) { + private Body(Input.Location loc, T tag, Forest[] tokens, boolean unwrap, boolean singleton) { this.location = loc; this.tag = tag; this.tokens = tokens==null ? emptyForestArray : new Forest[tokens.length]; @@ -134,7 +134,7 @@ public abstract class Forest { private static class MultiForest extends IterableForest { private final FastSet> results; private MultiForest(FastSet> results) { this.results = results; } - public MultiForest(Token.Location loc, T tag, Forest[] tokens, boolean unwrap, boolean singleton) { + public MultiForest(Input.Location loc, T tag, Forest[] tokens, boolean unwrap, boolean singleton) { this.results = new FastSet>(new Body(loc, tag, tokens, unwrap, singleton)); } public Iterator> iterator() { return results.iterator(); }