public class UnconditionalValueDerefSet
extends java.lang.Object
Constructor and Description |
---|
UnconditionalValueDerefSet(int numValueNumbersInMethod)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
addDeref(ValueNumber vn,
Location location)
Mark a value as being dereferenced at given Location.
|
void |
cleanDerefSet(Location location,
ValueNumberFrame vnaFrame) |
void |
clearDerefSet(ValueNumber value)
Clear the set of dereferences for given ValueNumber
|
java.util.Set<Location> |
getDerefLocationSet(ValueNumber vn)
Get the set of dereference Locations for given value number.
|
int |
getLastUpdateTimestamp() |
java.util.Set<Location> |
getUnconditionalDerefLocationSet(ValueNumber vn)
Get the set of Locations where given value is guaranteed to be
dereferenced.
|
java.util.Set<ValueNumber> |
getValueNumbersThatAreUnconditionallyDereferenced() |
boolean |
isBottom()
Is this the bottom value?
|
boolean |
isEmpty() |
boolean |
isSameAs(UnconditionalValueDerefSet otherFact)
Return whether or not this dataflow fact is identical to the one given.
|
boolean |
isTop()
Is this the top value?
|
boolean |
isUnconditionallyDereferenced(ValueNumber vn)
Return whether or not the given value number is unconditionally
dereferenced.
|
void |
makeSameAs(UnconditionalValueDerefSet source)
Make this dataflow fact the same as the given one.
|
void |
mergeWith(UnconditionalValueDerefSet fact,
ValueNumber skipMe,
ValueNumberFactory valueNumberFactory)
Merge given dataflow fact into this one.
|
void |
retainOnlyTheseValueNumbers(java.util.Collection<ValueNumber> valueNumbers) |
void |
setDerefSet(ValueNumber vn,
java.util.Set<Location> derefSet)
Set a value as being unconditionally dereferenced at the given set of
locations.
|
void |
setIsBottom()
Make this dataflow fact the bottom value.
|
void |
setIsTop()
Make this dataflow fact the top value.
|
void |
setLastUpdateTimestamp(int lastUpdateTimestamp) |
java.lang.String |
toString() |
void |
unionWith(UnconditionalValueDerefSet fact,
ValueNumberFactory valueNumberFactory) |
public UnconditionalValueDerefSet(int numValueNumbersInMethod)
numValueNumbersInMethod
- number of distinct value numbers in methodpublic boolean isBottom()
public void setIsBottom()
public boolean isTop()
public void setIsTop()
public void makeSameAs(UnconditionalValueDerefSet source)
source
- another dataflow factpublic boolean isSameAs(UnconditionalValueDerefSet otherFact)
otherFact
- another dataflow factpublic void mergeWith(UnconditionalValueDerefSet fact, @CheckForNull ValueNumber skipMe, ValueNumberFactory valueNumberFactory)
fact
- another dataflow factskipMe
- TODOpublic void unionWith(UnconditionalValueDerefSet fact, ValueNumberFactory valueNumberFactory)
public void addDeref(ValueNumber vn, Location location)
vn
- the valuelocation
- the Locationpublic void setDerefSet(ValueNumber vn, java.util.Set<Location> derefSet)
vn
- the valuederefSet
- the Set of dereference Locationspublic void clearDerefSet(ValueNumber value)
value
- the ValueNumberpublic java.util.Set<Location> getDerefLocationSet(ValueNumber vn)
vn
- the value numberpublic boolean isUnconditionallyDereferenced(ValueNumber vn)
vn
- the value numberpublic java.util.Set<ValueNumber> getValueNumbersThatAreUnconditionallyDereferenced()
public void retainOnlyTheseValueNumbers(java.util.Collection<ValueNumber> valueNumbers)
public java.util.Set<Location> getUnconditionalDerefLocationSet(ValueNumber vn)
vn
- the valuepublic java.lang.String toString()
toString
in class java.lang.Object
public void cleanDerefSet(@CheckForNull Location location, ValueNumberFrame vnaFrame)
location
- vnaFrame
- public void setLastUpdateTimestamp(int lastUpdateTimestamp)
lastUpdateTimestamp
- The lastUpdateTimestamp to set.public int getLastUpdateTimestamp()
public boolean isEmpty()
true
if the set is emptyFindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.