fd5a3de83253abf608f8ff4014c8f366ac065354
[IRC.git] / Robust / src / Analysis / SSJava / ClearingSummary.java
1 package Analysis.SSJava;
2
3 import java.util.Hashtable;
4 import java.util.Iterator;
5 import java.util.Set;
6
7 import IR.Descriptor;
8
9 public class ClearingSummary {
10
11   Hashtable<NTuple<Descriptor>, SharedStatus> summary;
12
13   public ClearingSummary() {
14     summary = new Hashtable<NTuple<Descriptor>, SharedStatus>();
15   }
16
17   public Iterator<NTuple<Descriptor>> heapPathIterator() {
18     return summary.keySet().iterator();
19   }
20
21   public SharedStatus get(NTuple<Descriptor> hp) {
22     return summary.get(hp);
23   }
24
25   public Set<NTuple<Descriptor>> keySet() {
26     return summary.keySet();
27   }
28
29   public void put(NTuple<Descriptor> key, SharedStatus value) {
30     summary.put(key, value);
31   }
32
33   public String toString() {
34     return summary.toString();
35   }
36
37   public int hashCode() {
38     return summary.hashCode();
39   }
40
41   public Hashtable<NTuple<Descriptor>, SharedStatus> getSummary() {
42     return summary;
43   }
44
45   public boolean equals(Object o) {
46
47     if (!(o instanceof ClearingSummary)) {
48       return false;
49     }
50
51     ClearingSummary in = (ClearingSummary) o;
52
53     if (getSummary().equals(in.getSummary())) {
54       return true;
55     }
56
57     return false;
58   }
59 }