Straightened out TokenTuple equality and hash codes so token sets
[IRC.git] / Robust / src / Analysis / OwnershipAnalysis / TokenTupleSet.java
1 package Analysis.OwnershipAnalysis;
2
3 import IR.*;
4 import IR.Flat.*;
5 import java.util.*;
6 import java.io.*;
7
8
9 public class TokenTupleSet {
10
11     public HashSet<TokenTuple> tokenTuples;
12
13     public TokenTupleSet() {
14         tokenTuples = new HashSet<TokenTuple>();
15     }
16
17     public TokenTupleSet( TokenTuple tt ) {
18         this();
19         tokenTuples.add( tt );
20     }
21
22     public TokenTupleSet( TokenTupleSet tts ) {
23         tokenTuples = (HashSet<TokenTuple>) tts.tokenTuples.clone(); //COPY?!
24     }
25
26     public TokenTupleSet union( TokenTupleSet ttsIn ) {
27         TokenTupleSet ttsOut = new TokenTupleSet( this );
28         //ttsOut.tokenTuples.addAll( ttsIn.tokenTuples );
29         Iterator i = ttsIn.tokenTuples.iterator();
30         while( i.hasNext() ) {
31             ttsOut.tokenTuples.add( (TokenTuple) i.next() );
32         }
33
34         return ttsOut;
35     }
36
37     public String toString() {
38         return tokenTuples.toString();
39     }
40 }