This commit was manufactured by cvs2svn to create tag 'buildscript'.
[IRC.git] /
1 package Analysis.TaskStateAnalysis;
2 import java.util.*;
3 import IR.*;
4 import IR.Tree.*;
5 import IR.Flat.*;
6 import Util.Edge;
7
8 public class Predicate {
9   public HashSet<VarDescriptor> vardescriptors;
10   public Hashtable<VarDescriptor, HashSet<FlagExpressionNode>> flags;
11   public Hashtable<VarDescriptor, TagExpressionList> tags;
12   //if there is a tag change, we stop the analysis
13
14   public Predicate() {
15     this.vardescriptors = new HashSet<VarDescriptor>();
16     this.flags = new Hashtable<VarDescriptor, HashSet<FlagExpressionNode>>();
17     this.tags = new Hashtable<VarDescriptor, TagExpressionList>();
18   }
19
20   public boolean equals(Object o) {
21     if (o instanceof Predicate) {
22       Predicate p=(Predicate)o;
23       if (vardescriptors.equals(p.vardescriptors)&&
24           flags.equals(p.flags)&&
25           tags.equals(p.tags))
26         return true;
27     }
28     return false;
29   }
30   public int hashCode() {
31     return vardescriptors.hashCode();
32   }
33 }