public class NullnessStore extends InitializationStore<NullnessValue,NullnessStore>
Store.FlowRule, Store.Kind
Modifier and Type | Field and Description |
---|---|
protected boolean |
isPolyNullNull |
initializedFields
analysis, arrayValues, classValues, fieldValues, localVariableValues, methodValues, sequentialSemantics, thisValue
Constructor and Description |
---|
NullnessStore(CFAbstractAnalysis<NullnessValue,NullnessStore,?> analysis,
boolean sequentialSemantics) |
NullnessStore(NullnessStore s) |
Modifier and Type | Method and Description |
---|---|
protected void |
internalVisualize(CFGVisualizer<NullnessValue,NullnessStore,?> viz)
Adds a representation of the internal information of this store to visualizer
viz . |
boolean |
isPolyNullNull() |
NullnessStore |
leastUpperBound(NullnessStore other)
Compute the least upper bound of two stores.
|
void |
setPolyNullNull(boolean isPolyNullNull) |
protected boolean |
supersetOf(CFAbstractStore<NullnessValue,NullnessStore> o)
Returns true iff this
CFAbstractStore contains a superset of the map entries of the
argument CFAbstractStore . |
addInitializedField, addInitializedField, getAnalysis, getFieldValues, insertValue, isFieldInitialized, updateForMethodCall
canAlias, canInsertReceiver, clearValue, copy, equals, getValue, getValue, getValue, getValue, getValue, getValue, initializeMethodParameter, initializeThisValue, insertThisValue, insertValue, isMonotonicUpdate, isSideEffectFree, removeConflicting, removeConflicting, removeConflicting, replaceValue, toString, updateForArrayAssignment, updateForAssignment, updateForFieldAccessAssignment, updateForLocalVariableAssignment, visualize
public NullnessStore(CFAbstractAnalysis<NullnessValue,NullnessStore,?> analysis, boolean sequentialSemantics)
public NullnessStore(NullnessStore s)
public NullnessStore leastUpperBound(NullnessStore other)
Store
Important: This method must fulfill the following contract:
this
.
other
.
this
, even if the signature is
more permissive.
leastUpperBound
in interface Store<NullnessStore>
leastUpperBound
in class InitializationStore<NullnessValue,NullnessStore>
protected boolean supersetOf(CFAbstractStore<NullnessValue,NullnessStore> o)
CFAbstractStore
CFAbstractStore
contains a superset of the map entries of the
argument CFAbstractStore
. Note that we test the entry keys and values by Java
equality, not by any subtype relationship. This method is used primarily to simplify the
equals predicate.supersetOf
in class InitializationStore<NullnessValue,NullnessStore>
protected void internalVisualize(CFGVisualizer<NullnessValue,NullnessStore,?> viz)
CFAbstractStore
viz
.internalVisualize
in class InitializationStore<NullnessValue,NullnessStore>
public boolean isPolyNullNull()
public void setPolyNullNull(boolean isPolyNullNull)