method call stably implemented as a first pass, results already show some incorrect...
[IRC.git] / Robust / src / Analysis / OwnershipAnalysis / ReachabilitySet.java
index 9e4a338e30f01af575bd0df413a1ae2f336dcc59..2fa693b1ce3140aec79568f99c660e3046298dc3 100644 (file)
@@ -181,6 +181,21 @@ public class ReachabilitySet extends Canonical {
   }
 
 
+  public ReachabilitySet unshadowTokens(AllocationSite as) {
+    assert as != null;
+
+    ReachabilitySet rsOut = new ReachabilitySet();
+
+    Iterator itrS = this.iterator();
+    while( itrS.hasNext() ) {
+      TokenTupleSet tts = (TokenTupleSet) itrS.next();
+      rsOut.possibleReachabilities.add( tts.unshadowTokens(as) );
+    }
+
+    return rsOut.makeCanonical();
+  }  
+
+
   public ReachabilitySet toShadowTokens(AllocationSite as) {
     assert as != null;