X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2FSequence.java;h=d9d035a504fbac5ca5c70057cd3cac276e4d1dd1;hp=6b615dcd4460f7ffa3a0133474120924e0947294;hb=0ab024f487647f99eb000345c29c2f8e9b52a200;hpb=2a11d8ca5ae3af89ac2bdea58f71e463b6e4affe diff --git a/src/edu/berkeley/sbp/Sequence.java b/src/edu/berkeley/sbp/Sequence.java index 6b615dc..d9d035a 100644 --- a/src/edu/berkeley/sbp/Sequence.java +++ b/src/edu/berkeley/sbp/Sequence.java @@ -12,8 +12,6 @@ public abstract class Sequence extends Element implements Iterable { // Static Constructors ////////////////////////////////////////////////////////////////////////////// - public Sequence and(Sequence s) { Sequence ret = dup(); ret.needs.add(s); s.needed.add(ret); return ret; } - public Sequence not(Sequence s) { Sequence ret = dup(); ret.hates.add(s); s.hated.add(ret); return ret; } abstract Sequence _clone(); Sequence dup() { Sequence ret = _clone(); @@ -53,6 +51,9 @@ public abstract class Sequence extends Element implements Iterable { return Atom.toAtom(elements[0]); } + public Sequence and(Sequence s) { Sequence ret = dup(); ret.needs.add(s); s.needed.add(ret); return ret; } + public Sequence not(Sequence s) { Sequence ret = dup(); ret.hates.add(s); s.hated.add(ret); return ret; } + protected final Element[] elements; final HashSet needed = new HashSet();