From: jjenista Date: Fri, 29 Aug 2008 21:53:38 +0000 (+0000) Subject: added equals() and hashCode() methods X-Git-Tag: buildscript^6~75 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=011acd51eb1b9e6e5e2646ecf35bbe284ef34d5e;p=IRC.git added equals() and hashCode() methods --- diff --git a/Robust/src/IR/FieldDescriptor.java b/Robust/src/IR/FieldDescriptor.java index edfb8959..7b295615 100644 --- a/Robust/src/IR/FieldDescriptor.java +++ b/Robust/src/IR/FieldDescriptor.java @@ -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()+";"; diff --git a/Robust/src/IR/Tree/Modifiers.java b/Robust/src/IR/Tree/Modifiers.java index 5b7b0ea9..be8aeabd 100644 --- a/Robust/src/IR/Tree/Modifiers.java +++ b/Robust/src/IR/Tree/Modifiers.java @@ -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)