projects
/
sbp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
checkpoint
[sbp.git]
/
src
/
edu
/
berkeley
/
sbp
/
util
/
Topology.java
diff --git
a/src/edu/berkeley/sbp/util/Topology.java
b/src/edu/berkeley/sbp/util/Topology.java
index
4f36f08
..
8de0f72
100644
(file)
--- a/
src/edu/berkeley/sbp/util/Topology.java
+++ b/
src/edu/berkeley/sbp/util/Topology.java
@@
-6,23
+6,20
@@
import java.util.*;
import java.lang.reflect.*;
import java.lang.ref.*;
import java.lang.reflect.*;
import java.lang.ref.*;
-// FIXME: this should be a value class -- add/remove/etc should return new Topology objects
/** values inhabiting a topology over <tt>V</tt> (roughly, infinite sets of <tt>V</tt>'s equipped with union/intersection/complement) */
public interface Topology<V> {
/** values inhabiting a topology over <tt>V</tt> (roughly, infinite sets of <tt>V</tt>'s equipped with union/intersection/complement) */
public interface Topology<V> {
- public void add(Topology<V> t);
- public void add(V t);
- public void remove(Topology<V> t);
- public void remove(V t);
- public Topology<V> dup();
+ public Topology<V> unwrap();
+ public Topology<V> empty();
+
public boolean contains(V v);
public boolean contains(V v);
- public Topology<V> fresh();
+ public boolean disjoint(Topology<V> t);
+ public boolean containsAll(Topology<V> t);
+ public Topology<V> complement();
public Topology<V> intersect(Topology<V> t);
public Topology<V> minus(Topology<V> t);
public Topology<V> union(Topology<V> t);
public Topology<V> intersect(Topology<V> t);
public Topology<V> minus(Topology<V> t);
public Topology<V> union(Topology<V> t);
- public boolean disjoint(Topology<V> t);
- public boolean containsAll(Topology<V> t);
public abstract int hashCode();
public abstract boolean equals(Object o);
public abstract int hashCode();
public abstract boolean equals(Object o);