1 package Analysis.OwnershipAnalysis;
9 public class TokenTupleSet {
11 private HashSet<TokenTuple> tokenTuples;
13 public TokenTupleSet() {
14 tokenTuples = new HashSet<TokenTuple>();
17 public TokenTupleSet( TokenTuple tt ) {
19 tokenTuples.add( tt );
22 public TokenTupleSet( TokenTupleSet tts ) {
23 tokenTuples = (HashSet<TokenTuple>) tts.tokenTuples.clone(); //COPY?!
26 public Iterator iterator() {
27 return tokenTuples.iterator();
30 public TokenTupleSet union( TokenTupleSet ttsIn ) {
31 TokenTupleSet ttsOut = new TokenTupleSet( this );
32 ttsOut.tokenTuples.addAll( ttsIn.tokenTuples );
36 public boolean isEmpty() {
37 return tokenTuples.isEmpty();
40 public boolean containsTuple( TokenTuple tt ) {
41 return tokenTuples.contains( tt );
44 // this should be a hash table so we can do this by key
45 public boolean containsToken( Integer token ) {
46 Iterator itr = tokenTuples.iterator();
47 while( itr.hasNext() ) {
48 TokenTuple tt = (TokenTuple) itr.next();
49 if( token.equals( tt.getToken() ) ) {
56 public String toString() {
57 return tokenTuples.toString();