Wrote callgraph.
[IRC.git] / Robust / src / Analysis / Flag / FlagState.java
1 package Analysis.Flag;
2 import java.util.*;
3 import IR.FlagDescriptor;
4
5 public class FlagState {
6     HashSet flags;
7
8     public FlagState() {
9         flags=new HashSet();
10     }
11
12     public void setFlag(FlagDescriptor fd, boolean status) {
13         if (status)
14             flags.add(fd);
15         else 
16             flags.remove(fd);
17     }
18
19     public boolean getFlagState(FlagDescriptor fd) {
20         return flags.contains(fd);
21     }
22     
23     public Set getFlags() {
24         return flags;
25     }
26
27     public boolean equals(Object o) {
28         if (!(o instanceof FlagState))
29             return false;
30         FlagState fs=(FlagState)o;
31         return fs.flags.equals(flags);
32     }
33
34     public int hashCode() {
35         return flags.hashCode();
36     }
37 }