cae5c56496c183105946aaa6d808a4e67bda9249
[IRC.git] / Robust / src / Analysis / Disjoint / DescriptorQWrapper.java
1 package Analysis.Disjoint;
2
3 import IR.*;
4 import IR.Flat.*;
5 import java.util.*;
6 import java.io.*;
7
8 public class DescriptorQWrapper implements Comparable {
9
10   private int priority;
11   private Descriptor d;
12
13   public DescriptorQWrapper(Integer p, Descriptor d) {
14     priority = p.intValue();
15     this.d   = d;
16   }
17
18   public DescriptorQWrapper(int p, Descriptor d) {
19     priority = p;
20     this.d   = d;
21   }
22
23   public Descriptor getDescriptor() {
24     return d;
25   }
26
27   public int compareTo(Object o) throws ClassCastException {
28
29     if( !(o instanceof DescriptorQWrapper) ) {
30       throw new ClassCastException();
31     }
32
33     DescriptorQWrapper dqw = (DescriptorQWrapper) o;
34     return priority - dqw.priority;
35   }
36
37   public boolean equals(Object o) {
38     if( o == null ) {
39       return false;
40     }
41
42     if( !( o instanceof DescriptorQWrapper) ) {
43       return false;
44     }
45
46     DescriptorQWrapper dqw = (DescriptorQWrapper) o;
47
48     return d.equals(dqw.d);
49   }
50 }