089ea9144e79ff3929b202a07f7d5614860051dc
[IRC.git] / Robust / src / Analysis / MLP / VariableSourceToken.java
1 package Analysis.MLP;
2
3 import IR.*;
4 import IR.Flat.*;
5 import java.util.*;
6 import java.io.*;
7
8 public class VariableSourceToken {
9
10   private FlatSESEEnterNode sese;
11   private TempDescriptor    var;
12   private Integer           age;
13
14   public VariableSourceToken( FlatSESEEnterNode sese,
15                               TempDescriptor    var, 
16                               Integer           age ) {
17     this.sese = sese;
18     this.var  = var;
19     this.age  = age;
20   }
21
22   public FlatSESEEnterNode getSESE() {
23     return sese;
24   }
25
26   public TempDescriptor getVar() {
27     return var;
28   }
29
30   public Integer getAge() {
31     return age;
32   }
33
34
35   public boolean equals( Object o ) {
36     if( o == null ) {
37       return false;
38     }
39
40     if( !(o instanceof VariableSourceToken) ) {
41       return false;
42     }
43
44     VariableSourceToken vst = (VariableSourceToken) o;
45
46     return sese.equals( vst.sese ) &&
47             var.equals( vst.var  ) &&
48             age.equals( vst.age  );
49   }
50
51   public int hashCode() {
52     return (sese.hashCode() << 3) * (var.hashCode() << 2) ^ age.intValue();
53   }
54
55
56   public String toString() {
57     return "["+sese+", "+var+", "+age+"]";
58   }
59 }