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 |
internalDotOutput(StringBuilder result)
Adds a DOT representation of the internal information of this store to
result . |
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, escapeDoubleQuotes, getValue, getValue, getValue, getValue, getValue, getValue, hasDOToutput, initializeMethodParameter, initializeThisValue, insertThisValue, insertValue, isSideEffectFree, removeConflicting, removeConflicting, removeConflicting, replaceValue, toDOToutput, toString, toStringEscapeDoubleQuotes, updateForArrayAssignment, updateForAssignment, updateForFieldAccessAssignment, updateForLocalVariableAssignment
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 internalDotOutput(StringBuilder result)
CFAbstractStore
result
.internalDotOutput
in class InitializationStore<NullnessValue,NullnessStore>
public boolean isPolyNullNull()
public void setPolyNullNull(boolean isPolyNullNull)