X-Git-Url: http://plrg.eecs.uci.edu/git/?p=repair.git;a=blobdiff_plain;f=Repair%2FRepairCompiler%2FMCC%2FIR%2FTupleOfExpr.java;h=f0ccb85c428510d506ba3362597605a4f9874f3b;hp=a726e044ba44901e497300782d9f6b2235075928;hb=30816378d0198b3cdeac43ad5bf80df3b7646406;hpb=ce993d16a8b0057b8d5881be15aed42926e54783 diff --git a/Repair/RepairCompiler/MCC/IR/TupleOfExpr.java b/Repair/RepairCompiler/MCC/IR/TupleOfExpr.java index a726e04..f0ccb85 100755 --- a/Repair/RepairCompiler/MCC/IR/TupleOfExpr.java +++ b/Repair/RepairCompiler/MCC/IR/TupleOfExpr.java @@ -18,6 +18,30 @@ public class TupleOfExpr extends Expr { this.relation = relation; } + public String name() { + return "<"+left.name()+","+right.name()+"> in "+relation.toString(); + } + + public boolean usesDescriptor(Descriptor d) { + if (d==relation) + return true; + else + return left.usesDescriptor(d)||right.usesDescriptor(d); + } + + public boolean equals(Map remap, Expr e) { + if (e==null||!(e instanceof TupleOfExpr)) + return false; + TupleOfExpr toe=(TupleOfExpr)e; + if (!left.equals(remap,toe.left)) + return false; + if (!right.equals(remap,toe.right)) + return false; + if (relation!=toe.relation) + return false; + return true; + } + public Set getRequiredDescriptors() { Set v = left.getRequiredDescriptors(); v.addAll(right.getRequiredDescriptors());