public class Constant extends Object implements AbstractValue<Constant>
| Modifier and Type | Class and Description |
|---|---|
static class |
Constant.Type |
| Modifier and Type | Field and Description |
|---|---|
protected Constant.Type |
type
What kind of abstract value is this?
|
protected @Nullable Integer |
value
The value of this abstract value (or null).
|
| Constructor and Description |
|---|
Constant(Constant.Type type)
Create a constant for
type. |
Constant(Integer value)
Create a constant for
value. |
| Modifier and Type | Method and Description |
|---|---|
Constant |
copy() |
boolean |
equals(@Nullable Object obj) |
Integer |
getValue() |
int |
hashCode() |
boolean |
isBottom() |
boolean |
isConstant() |
boolean |
isTop() |
Constant |
leastUpperBound(Constant other)
Compute the least upper bound of two stores.
|
String |
toString() |
protected Constant.Type type
public Constant(Constant.Type type)
type.public Constant(Integer value)
value.public boolean isTop()
public boolean isBottom()
@EnsuresNonNullIf(result=true, expression="value") public boolean isConstant()
public Integer getValue()
public Constant copy()
public Constant leastUpperBound(Constant other)
AbstractValueImportant: This method must fulfill the following contract:
this.
other.
this, even if the signature is
more permissive.
leastUpperBound in interface AbstractValue<Constant>