Added reachability classes, all of which are extensions of Canonical such that
[IRC.git] / Robust / src / Analysis / OwnershipAnalysis / ReferenceEdgeProperties.java
index eee529869093c4851310cf264e018a17aed51793..72b4457bf0c8157439106fbfba8866572fd0647c 100644 (file)
@@ -5,17 +5,28 @@ public class ReferenceEdgeProperties {
     public ReferenceEdgeProperties() {
        this.isUnique                = false;
        this.isInitialParamReflexive = false;
+       this.beta                    = new ReachabilitySet();
     }    
 
     public ReferenceEdgeProperties( boolean isUnique ) {
        this.isUnique                = isUnique;
        this.isInitialParamReflexive = false;
+       this.beta                    = new ReachabilitySet();
     }
 
     public ReferenceEdgeProperties( boolean isUnique,
                                    boolean isInitialParamReflexive ) {
        this.isUnique                = isUnique;
        this.isInitialParamReflexive = isInitialParamReflexive;
+       this.beta                    = new ReachabilitySet();
+    }
+
+    public ReferenceEdgeProperties( boolean         isUnique,
+                                   boolean         isInitialParamReflexive,
+                                   ReachabilitySet beta) {
+       this.isUnique                = isUnique;
+       this.isInitialParamReflexive = isInitialParamReflexive;
+       this.beta                    = beta;
     }
 
 
@@ -43,6 +54,18 @@ public class ReferenceEdgeProperties {
     }
 
 
+    protected ReachabilitySet beta;
+    public ReachabilitySet getBeta() {
+       return beta;
+    }
+    public void setBeta( ReachabilitySet beta ) {
+       this.beta = beta;
+    }
+    public String getBetaString() {
+       return beta.toStringEscapeNewline();
+    }
+
+
     public boolean equals( ReferenceEdgeProperties rep ) {
        return isUnique                == rep.isUnique()                &&
               isInitialParamReflexive == rep.isInitialParamReflexive();