public class DefUseAbsVal extends java.lang.Object implements AbstractValue<DefUseAbsVal>
Modifier and Type | Field and Description |
---|---|
static DefUseAbsVal |
EMPTY |
protected int |
hashCode |
protected java.util.Set<EdgeIdentifier> |
rd |
Constructor and Description |
---|
DefUseAbsVal() |
DefUseAbsVal(java.util.Set<EdgeIdentifier> rd) |
Modifier and Type | Method and Description |
---|---|
DefUseAbsVal |
addReachingDef(EdgeIdentifier d) |
boolean |
equals(java.lang.Object obj) |
int |
hashCode() |
boolean |
isBottom()
An AbstractValue may indicate that it is the bottom element.
|
boolean |
leq(DefUseAbsVal that)
Is the given object less than or equal to this one
|
java.util.Set<EdgeIdentifier> |
reachingDefinitions() |
java.lang.String |
toString() |
DefUseAbsVal |
upperBound(DefUseAbsVal that)
Compute the upper bound of
this and o |
DefUseAbsVal |
widen(DefUseAbsVal that)
Compute the widening operator on
this and o . |
protected final java.util.Set<EdgeIdentifier> rd
protected final int hashCode
public static final DefUseAbsVal EMPTY
public DefUseAbsVal()
public DefUseAbsVal(java.util.Set<EdgeIdentifier> rd)
public java.lang.String toString()
toString
in class java.lang.Object
public DefUseAbsVal addReachingDef(EdgeIdentifier d)
public java.util.Set<EdgeIdentifier> reachingDefinitions()
public DefUseAbsVal widen(DefUseAbsVal that)
Ordered
this
and o
. A
widening operator is an upper bound where all ascending chains eventually
stabilize.widen
in interface Ordered<DefUseAbsVal>
that
- object to widen with this
this
and o
public boolean leq(DefUseAbsVal that)
Ordered
leq
in interface Ordered<DefUseAbsVal>
that
- object to compare to this
o
public DefUseAbsVal upperBound(DefUseAbsVal that)
Ordered
this
and o
upperBound
in interface Ordered<DefUseAbsVal>
that
- object to upper bound with thisthis
with o
public boolean isBottom()
AbstractValue
isBottom
in interface AbstractValue<DefUseAbsVal>
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object