X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=src%2Fedu%2Fberkeley%2Fsbp%2FSequence.java;h=e5db6c8360e8535bf4ff04255a8620aa5070b731;hb=a26089cd0d7c95cad657b745e836cb4cba35a97a;hp=33a91bbb6153a917f66591ee2ddbbabed17d9ccf;hpb=2bee2b032b0422d212e17082cc4dcbf28cb897ac;p=sbp.git diff --git a/src/edu/berkeley/sbp/Sequence.java b/src/edu/berkeley/sbp/Sequence.java index 33a91bb..e5db6c8 100644 --- a/src/edu/berkeley/sbp/Sequence.java +++ b/src/edu/berkeley/sbp/Sequence.java @@ -184,7 +184,7 @@ public abstract class Sequence extends Element implements Iterable { public Constant(Element[] e, Object result) { super(e); this.result = result; } Sequence _clone() { return new Constant(elements, result); } public Forest postReduce(Input.Region loc, Forest[] args, Position p) { - return (Forest)Forest.leaf(loc, result, p); + return (Forest)Forest.create(loc, result, null, false); } static class Drop extends Constant { Sequence _clone() { return new Drop(elements, lame); } @@ -202,7 +202,7 @@ public abstract class Sequence extends Element implements Iterable { private final int idx; public Singleton(Element e) { this(new Element[] { e }, 0); } public Singleton(Element[] e, int idx) { super(e); this.idx = idx; } - public Forest postReduce(Input.Region loc, Forest[] args, Position p) { return (Forest)Forest.singleton(loc, args[idx], p); } + public Forest postReduce(Input.Region loc, Forest[] args, Position p) { return args[idx]; } Sequence _clone() { return new Singleton(elements,idx); } } @@ -215,13 +215,13 @@ public abstract class Sequence extends Element implements Iterable { Sequence _clone() { return new Unwrap(elements, drops); } public Forest postReduce(Input.Region loc, Forest[] args, Position p) { for(int i=0; i[] args2 = new Forest[count]; int j = 0; for(int i=0; i { int j = 0; for(int i=0; i