Fix tabbing.... Please fix your editors so they do tabbing correctly!!! (Spaces...
[IRC.git] / Robust / src / Analysis / OwnershipAnalysis / MethodEffectsAnalysis.java
index 1dc3f20accfacf1ee111380a3769e98cf4ba402c..99d2a73c6d5c7629ed12d2e03590abbd54001a4c 100644 (file)
@@ -16,131 +16,131 @@ import IR.Flat.TempDescriptor;
 
 public class MethodEffectsAnalysis {
 
-       private Hashtable<MethodContext, MethodEffects> mapMethodContextToMethodEffects;
-       boolean methodeffects = false;
-
-       public MethodEffectsAnalysis(boolean methodeffects) {
-               this.methodeffects = methodeffects;
-               mapMethodContextToMethodEffects = new Hashtable<MethodContext, MethodEffects>();
-       }
-       
-       public MethodEffects getMethodEffectsByMethodContext(MethodContext mc){
-               return mapMethodContextToMethodEffects.get(mc);
+  private Hashtable<MethodContext, MethodEffects> mapMethodContextToMethodEffects;
+  boolean methodeffects = false;
+
+  public MethodEffectsAnalysis(boolean methodeffects) {
+    this.methodeffects = methodeffects;
+    mapMethodContextToMethodEffects = new Hashtable<MethodContext, MethodEffects>();
+  }
+
+  public MethodEffects getMethodEffectsByMethodContext(MethodContext mc) {
+    return mapMethodContextToMethodEffects.get(mc);
+  }
+
+  public void createNewMapping(MethodContext mcNew) {
+    if(!methodeffects) return;
+    if (!mapMethodContextToMethodEffects.containsKey(mcNew)) {
+      MethodEffects meNew = new MethodEffects();
+      mapMethodContextToMethodEffects.put(mcNew, meNew);
+    }
+  }
+
+  public void analyzeFlatCall(OwnershipGraph calleeOG,
+                              MethodContext calleeMC, MethodContext callerMC, FlatCall fc) {
+    if(!methodeffects) return;
+    MethodEffects me = mapMethodContextToMethodEffects.get(callerMC);
+    MethodEffects meFlatCall = mapMethodContextToMethodEffects
+                               .get(calleeMC);
+    me.analyzeFlatCall(calleeOG, fc, callerMC, meFlatCall);
+    mapMethodContextToMethodEffects.put(callerMC, me);
+  }
+
+  public void analyzeFlatFieldNode(MethodContext mc, OwnershipGraph og,
+                                   TempDescriptor srcDesc, FieldDescriptor fieldDesc) {
+    if(!methodeffects) return;
+    MethodEffects me = mapMethodContextToMethodEffects.get(mc);
+    me.analyzeFlatFieldNode(og, srcDesc, fieldDesc);
+    mapMethodContextToMethodEffects.put(mc, me);
+  }
+
+  public void analyzeFlatSetFieldNode(MethodContext mc, OwnershipGraph og,
+                                      TempDescriptor dstDesc, FieldDescriptor fieldDesc) {
+    if(!methodeffects) return;
+    MethodEffects me = mapMethodContextToMethodEffects.get(mc);
+    me.analyzeFlatSetFieldNode(og, dstDesc, fieldDesc);
+    mapMethodContextToMethodEffects.put(mc, me);
+  }
+
+  public void analyzeFlatSetElementNode(MethodContext mc, OwnershipGraph og,
+                                        TempDescriptor dstDesc, FieldDescriptor fieldDesc) {
+    if(!methodeffects) return;
+    MethodEffects me = mapMethodContextToMethodEffects.get(mc);
+    me.analyzeFlatSetElementNode(og, dstDesc, fieldDesc);
+    mapMethodContextToMethodEffects.put(mc, me);
+  }
+
+  public void analyzeFlatElementNode(MethodContext mc, OwnershipGraph og,
+                                     TempDescriptor dstDesc, FieldDescriptor fieldDesc) {
+    if(!methodeffects) return;
+    MethodEffects me = mapMethodContextToMethodEffects.get(mc);
+    me.analyzeFlatElementNode(og, dstDesc, fieldDesc);
+    mapMethodContextToMethodEffects.put(mc, me);
+  }
+
+
+  public void writeMethodEffectsResult() throws IOException {
+
+    try {
+      BufferedWriter bw = new BufferedWriter(new FileWriter(
+                                               "MethodEffects_report.txt"));
+
+      Set<MethodContext> mcSet = mapMethodContextToMethodEffects.keySet();
+      Iterator<MethodContext> mcIter = mcSet.iterator();
+      while (mcIter.hasNext()) {
+       MethodContext mc = mcIter.next();
+       MethodDescriptor md = (MethodDescriptor) mc.getDescriptor();
+
+       int startIdx = 0;
+       if (!md.isStatic()) {
+         startIdx = 1;
        }
 
-       public void createNewMapping(MethodContext mcNew) {
-               if(!methodeffects) return;
-               if (!mapMethodContextToMethodEffects.containsKey(mcNew)) {
-                       MethodEffects meNew = new MethodEffects();
-                       mapMethodContextToMethodEffects.put(mcNew, meNew);
-               }
-       }
+       MethodEffects me = mapMethodContextToMethodEffects.get(mc);
+       EffectsSet effectsSet = me.getEffects();
+
+       bw.write("Method " + mc + " :\n");
+       for (int i = startIdx; i < md.numParameters() + startIdx; i++) {
+
+         String paramName = md.getParamName(i - startIdx);
+
+         Set<EffectsKey> effectSet = effectsSet.getReadingSet(i);
+         String keyStr = "{";
+         if (effectSet != null) {
+           Iterator<EffectsKey> effectIter = effectSet.iterator();
+           while (effectIter.hasNext()) {
+             EffectsKey key = effectIter.next();
+             keyStr += " " + key;
+           }
+         }
+         keyStr += " }";
+         bw.write("  Paramter " + paramName + " ReadingSet="
+                  + keyStr + "\n");
+
+         effectSet = effectsSet.getWritingSet(new Integer(i));
+         keyStr = "{";
+         if (effectSet != null) {
+           Iterator<EffectsKey> effectIter = effectSet.iterator();
+           while (effectIter.hasNext()) {
+             EffectsKey key = effectIter.next();
+             keyStr += " " + key;
+           }
+         }
+
+         keyStr += " }";
+         bw.write("  Paramter " + paramName + " WritingngSet="
+                  + keyStr + "\n");
 
-       public void analyzeFlatCall(OwnershipGraph calleeOG,
-                       MethodContext calleeMC, MethodContext callerMC, FlatCall fc) {
-               if(!methodeffects) return;
-               MethodEffects me = mapMethodContextToMethodEffects.get(callerMC);
-               MethodEffects meFlatCall = mapMethodContextToMethodEffects
-                               .get(calleeMC);
-               me.analyzeFlatCall(calleeOG, fc, callerMC, meFlatCall);
-               mapMethodContextToMethodEffects.put(callerMC, me);
        }
+       bw.write("\n");
 
-       public void analyzeFlatFieldNode(MethodContext mc, OwnershipGraph og,
-                       TempDescriptor srcDesc, FieldDescriptor fieldDesc) {
-               if(!methodeffects) return;
-               MethodEffects me = mapMethodContextToMethodEffects.get(mc);
-               me.analyzeFlatFieldNode(og, srcDesc, fieldDesc);
-               mapMethodContextToMethodEffects.put(mc, me);
-       }
+      }
 
-       public void analyzeFlatSetFieldNode(MethodContext mc, OwnershipGraph og,
-                       TempDescriptor dstDesc, FieldDescriptor fieldDesc) {
-               if(!methodeffects) return;
-               MethodEffects me = mapMethodContextToMethodEffects.get(mc);
-               me.analyzeFlatSetFieldNode(og, dstDesc, fieldDesc);
-               mapMethodContextToMethodEffects.put(mc, me);
-       }
-       
-       public void analyzeFlatSetElementNode(MethodContext mc, OwnershipGraph og,
-                       TempDescriptor dstDesc, FieldDescriptor fieldDesc) {
-               if(!methodeffects) return;
-               MethodEffects me = mapMethodContextToMethodEffects.get(mc);
-               me.analyzeFlatSetElementNode(og, dstDesc, fieldDesc);
-               mapMethodContextToMethodEffects.put(mc, me);
-       }
-       
-       public void analyzeFlatElementNode(MethodContext mc, OwnershipGraph og,
-                       TempDescriptor dstDesc, FieldDescriptor fieldDesc) {
-               if(!methodeffects) return;
-               MethodEffects me = mapMethodContextToMethodEffects.get(mc);
-               me.analyzeFlatElementNode(og, dstDesc, fieldDesc);
-               mapMethodContextToMethodEffects.put(mc, me);
-       }
-       
-
-       public void writeMethodEffectsResult() throws IOException {
-
-               try {
-                       BufferedWriter bw = new BufferedWriter(new FileWriter(
-                                       "MethodEffects_report.txt"));
-
-                       Set<MethodContext> mcSet = mapMethodContextToMethodEffects.keySet();
-                       Iterator<MethodContext> mcIter = mcSet.iterator();
-                       while (mcIter.hasNext()) {
-                               MethodContext mc = mcIter.next();
-                               MethodDescriptor md = (MethodDescriptor) mc.getDescriptor();
-
-                               int startIdx = 0;
-                               if (!md.isStatic()) {
-                                       startIdx = 1;
-                               }
-
-                               MethodEffects me = mapMethodContextToMethodEffects.get(mc);
-                               EffectsSet effectsSet = me.getEffects();
-
-                               bw.write("Method " + mc + " :\n");
-                               for (int i = startIdx; i < md.numParameters() + startIdx; i++) {
-
-                                       String paramName = md.getParamName(i - startIdx);
-
-                                       Set<EffectsKey> effectSet = effectsSet.getReadingSet(i);
-                                       String keyStr = "{";
-                                       if (effectSet != null) {
-                                               Iterator<EffectsKey> effectIter = effectSet.iterator();
-                                               while (effectIter.hasNext()) {
-                                                       EffectsKey key = effectIter.next();
-                                                       keyStr += " " + key;
-                                               }
-                                       }
-                                       keyStr += " }";
-                                       bw.write("  Paramter " + paramName + " ReadingSet="
-                                                       + keyStr + "\n");
-
-                                       effectSet = effectsSet.getWritingSet(new Integer(i));
-                                       keyStr = "{";
-                                       if (effectSet != null) {
-                                               Iterator<EffectsKey> effectIter = effectSet.iterator();
-                                               while (effectIter.hasNext()) {
-                                                       EffectsKey key = effectIter.next();
-                                                       keyStr += " " + key;
-                                               }
-                                       }
-
-                                       keyStr += " }";
-                                       bw.write("  Paramter " + paramName + " WritingngSet="
-                                                       + keyStr + "\n");
-
-                               }
-                               bw.write("\n");
-
-                       }
-
-                       bw.close();
-               } catch (IOException e) {
-                       System.err.println(e);
-               }
+      bw.close();
+    } catch (IOException e) {
+      System.err.println(e);
+    }
 
-       }
+  }
 
 }