1 package Analysis.OwnershipAnalysis;
3 import IR.TypeDescriptor;
5 public class EffectsKey {
8 private TypeDescriptor td;
10 private String hrnUniqueId;
11 private int paramIden;
13 public EffectsKey(String fd, TypeDescriptor td, Integer hrnId, String hrnUniqueId, int paramIden) {
17 this.hrnUniqueId=hrnUniqueId;
18 this.paramIden=paramIden;
21 public int getParamIden() {
25 public String getFieldDescriptor() {
29 public TypeDescriptor getTypeDescriptor() {
33 public Integer getHRNId() {
37 public String getHRNUniqueId() {
41 public String toString() {
42 return "(" + td + ")" + fd + "#" + hrnId;
45 public int hashCode() {
50 hash = hash * 31 + fd.hashCode();
54 hash += td.getSymbol().hashCode();
58 hash += hrnId.hashCode();
65 public boolean equals(Object o) {
71 if (!(o instanceof EffectsKey)) {
75 EffectsKey in = (EffectsKey) o;
77 if (fd.equals(in.getFieldDescriptor())
78 && td.getSymbol().equals(in.getTypeDescriptor().getSymbol())
79 && hrnId.equals(in.getHRNId())) {