diff --git a/com.ibm.wala.core/src/com/ibm/wala/analysis/typeInference/TypeVariable.java b/com.ibm.wala.core/src/com/ibm/wala/analysis/typeInference/TypeVariable.java index fc6ba0553..a2b24ebc7 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/analysis/typeInference/TypeVariable.java +++ b/com.ibm.wala.core/src/com/ibm/wala/analysis/typeInference/TypeVariable.java @@ -14,7 +14,7 @@ import com.ibm.wala.fixedpoint.impl.AbstractVariable; /** * A type variable in the dataflow system. */ -public class TypeVariable extends AbstractVariable { +public class TypeVariable extends AbstractVariable { TypeAbstraction type; diff --git a/com.ibm.wala.core/src/com/ibm/wala/fixedpoint/impl/AbstractVariable.java b/com.ibm.wala.core/src/com/ibm/wala/fixedpoint/impl/AbstractVariable.java index 87612c47b..2e3bde1c2 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/fixedpoint/impl/AbstractVariable.java +++ b/com.ibm.wala.core/src/com/ibm/wala/fixedpoint/impl/AbstractVariable.java @@ -18,7 +18,7 @@ import com.ibm.wala.util.graph.impl.NodeWithNumber; * * @author Stephen Fink */ -public abstract class AbstractVariable extends NodeWithNumber implements IVariable { +public abstract class AbstractVariable extends NodeWithNumber implements IVariable { private int orderNumber; diff --git a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BitVectorVariable.java b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BitVectorVariable.java index f98421c6d..ec20d56ed 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BitVectorVariable.java +++ b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BitVectorVariable.java @@ -23,7 +23,7 @@ import com.ibm.wala.util.intset.MutableSharedBitVectorIntSet; * * @author sfink */ -public class BitVectorVariable extends AbstractVariable { +public class BitVectorVariable extends AbstractVariable { private MutableSharedBitVectorIntSet V; private final int hash; diff --git a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BooleanVariable.java b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BooleanVariable.java index 61b3dc35a..7da3fa648 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BooleanVariable.java +++ b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/BooleanVariable.java @@ -18,7 +18,7 @@ import com.ibm.wala.fixedpoint.impl.AbstractVariable; * * @author sfink */ -public class BooleanVariable extends AbstractVariable { +public class BooleanVariable extends AbstractVariable { private boolean B; diff --git a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IVariable.java b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IVariable.java index 1b2612fb7..782078b96 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IVariable.java +++ b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IVariable.java @@ -19,7 +19,7 @@ import com.ibm.wala.util.graph.INodeWithNumber; * * @author Stephen Fink */ -public interface IVariable extends INodeWithNumber { +public interface IVariable extends INodeWithNumber { /** @@ -44,4 +44,11 @@ public interface IVariable extends INodeWithNumber { */ public abstract void setOrderNumber(int i); + /** + * Set this variable to have the same state as another one + * + * @param v + */ + public void copyState(T v); + } \ No newline at end of file diff --git a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IntSetVariable.java b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IntSetVariable.java index 656bb5a9d..a52a9a64d 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IntSetVariable.java +++ b/com.ibm.wala.core/src/com/ibm/wala/fixpoint/IntSetVariable.java @@ -24,11 +24,11 @@ import com.ibm.wala.util.intset.MutableIntSet; * * @author sfink */ -public abstract class IntSetVariable extends AbstractVariable { +public abstract class IntSetVariable extends AbstractVariable { private MutableIntSet V; - public void copyState(IntSetVariable other) { + public void copyState(T other) { if (V == null) { if (other.V == null) { return; @@ -64,7 +64,7 @@ public abstract class IntSetVariable extends AbstractVariable { * * @return true iff the contents of this variable changes. */ - public boolean addAll(IntSetVariable other) { + public boolean addAll(T other) { if (V == null) { copyState(other); return (V != null); @@ -157,7 +157,7 @@ public abstract class IntSetVariable extends AbstractVariable { return V.containsAny(instances); } - public boolean addAllInIntersection(IntSetVariable other, IntSet filter) { + public boolean addAllInIntersection(T other, IntSet filter) { if (V == null) { copyState(other); if (V != null) { diff --git a/com.ibm.wala.core/src/com/ibm/wala/ipa/callgraph/propagation/PointsToSetVariable.java b/com.ibm.wala.core/src/com/ibm/wala/ipa/callgraph/propagation/PointsToSetVariable.java index bbb733b28..82b1a45ed 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/ipa/callgraph/propagation/PointsToSetVariable.java +++ b/com.ibm.wala.core/src/com/ibm/wala/ipa/callgraph/propagation/PointsToSetVariable.java @@ -17,7 +17,7 @@ import com.ibm.wala.util.debug.Assertions; * @author sfink * */ -public class PointsToSetVariable extends IntSetVariable { +public class PointsToSetVariable extends IntSetVariable { private PointerKey pointerKey; public PointsToSetVariable(PointerKey key) {