Fixed lot of random bugs. Added code generate strings for expr's.
[repair.git] / Repair / RepairCompiler / MCC / IR / ElementOfExpr.java
index 51941f90f2aa1a93a87528938f504d42cf51df66..1fdf42ad49778cf6ebf7d797f27a61f8b48e75fa 100755 (executable)
@@ -11,10 +11,28 @@ public class ElementOfExpr extends Expr {
         if (element == null || set == null) {
             throw new NullPointerException();
         }
-
         this.element = element;
         this.set = set;
     }
+    public boolean usesDescriptor(Descriptor d) {
+       if (d==set)
+           return true;
+       return element.usesDescriptor(d);
+    }
+    public String name() {
+       return element.name()+" in "+set.toString();
+    }
+
+    public boolean equals(Map remap, Expr e) {
+       if (e==null||!(e instanceof ElementOfExpr))
+           return false;
+       ElementOfExpr eoe=(ElementOfExpr)e;
+       if (eoe.set!=set)
+           return false;
+       if (!element.equals(remap,eoe.element))
+           return false;
+       return true;
+    }
 
     public Set getRequiredDescriptors() {
         Set v = element.getRequiredDescriptors();