added equals() and hashCode() methods
authorjjenista <jjenista>
Fri, 29 Aug 2008 21:53:38 +0000 (21:53 +0000)
committerjjenista <jjenista>
Fri, 29 Aug 2008 21:53:38 +0000 (21:53 +0000)
Robust/src/IR/FieldDescriptor.java
Robust/src/IR/Tree/Modifiers.java

index edfb8959db0276f9c780451ea6f7f350dba58c81..7b295615b56dd77775657f52774a48735b4b950b 100644 (file)
@@ -37,6 +37,30 @@ public class FieldDescriptor extends Descriptor {
     return td;
   }
 
+  public boolean equals( Object o ) {
+    if( o == null ) return false;
+    if( !(o instanceof FieldDescriptor) ) return false;
+
+    FieldDescriptor fd = (FieldDescriptor) o;
+    if( modifier == null && fd.modifier != null ) return false;    
+    if( modifier != null && !modifier.equals( fd.modifier ) ) return false;
+    if( !(td == fd.td) ) return false;
+    if( !(en == fd.en) ) return false;
+    if( !isglobal == fd.isglobal ) return false;
+    if( identifier == null && fd.identifier != null ) return false;
+    if( identifier != null && !identifier.equals( fd.identifier ) ) return false;
+    return true;
+  }
+
+  public int hashCode() {
+    int hashCode = modifier.hashCode();
+    hashCode += td.hashCode();
+    if( en != null ) hashCode += 81;
+    if( isglobal ) hashCode += 11;
+    if( identifier != null ) hashCode += identifier.hashCode();
+    return hashCode;
+  }
+
   public String toString() {
     if (en==null)
       return modifier.toString()+td.toString()+" "+getSymbol()+";";
index 5b7b0ea9b2e26de9a14d2e089d7fddb2524639b4..be8aeabded470fa0cd1e3821515512f133bd549b 100644 (file)
@@ -50,6 +50,17 @@ public class Modifiers {
     return ((value&FINAL)!=0);
   }
 
+  public boolean equals( Object o ) {
+    if( o == null ) return false;
+    if( !(o instanceof Modifiers) ) return false;
+    Modifiers m = (Modifiers) o;
+    return value == m.value;
+  }
+
+  public int hashCode() {
+    return value*7+1;
+  }
+
   public String toString() {
     String st="";
     if ((value&PUBLIC)!=0)