Class NullnessNoInitValue
- java.lang.Object
-
- org.checkerframework.framework.flow.CFAbstractValue<NullnessNoInitValue>
-
- org.checkerframework.checker.nullness.NullnessNoInitValue
-
- All Implemented Interfaces:
AbstractValue<NullnessNoInitValue>
public class NullnessNoInitValue extends CFAbstractValue<NullnessNoInitValue>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.checkerframework.framework.flow.CFAbstractValue
CFAbstractValue.AnnotationSetCombiner, CFAbstractValue.ValueGlb, CFAbstractValue.ValueLub
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
isPolyNullNonNull
protected boolean
isPolyNullNull
-
Fields inherited from class org.checkerframework.framework.flow.CFAbstractValue
analysis, annotations, underlyingType
-
-
Constructor Summary
Constructors Constructor Description NullnessNoInitValue(CFAbstractAnalysis<NullnessNoInitValue,?,?> analysis, AnnotationMirrorSet annotations, javax.lang.model.type.TypeMirror underlyingType)
Creates a new NullnessValue.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description NullnessNoInitValue
leastUpperBound(@Nullable NullnessNoInitValue other)
Compute the least upper bound of two values.java.lang.String
toStringSimple()
Returns the string representation, using simple (not fully-qualified) names.-
Methods inherited from class org.checkerframework.framework.flow.CFAbstractValue
canBeMissingAnnotations, equals, getAnnotations, getUnderlyingType, greatestLowerBound, hashCode, mostSpecific, toString, toStringFullyQualified, validateSet, widenUpperBound
-
-
-
-
Constructor Detail
-
NullnessNoInitValue
public NullnessNoInitValue(CFAbstractAnalysis<NullnessNoInitValue,?,?> analysis, AnnotationMirrorSet annotations, javax.lang.model.type.TypeMirror underlyingType)
Creates a new NullnessValue.- Parameters:
analysis
- the analysisannotations
- the annotationsunderlyingType
- the underlying type
-
-
Method Detail
-
leastUpperBound
public NullnessNoInitValue leastUpperBound(@Nullable NullnessNoInitValue other)
Description copied from interface:AbstractValue
Compute the least upper bound of two values.Important: This method must fulfill the following contract:
- Does not change
this
. - Does not change
other
. - Returns a fresh object which is not aliased yet.
- Returns an object of the same (dynamic) type as
this
, even if the signature is more permissive. - Is commutative.
- Specified by:
leastUpperBound
in interfaceAbstractValue<NullnessNoInitValue>
- Overrides:
leastUpperBound
in classCFAbstractValue<NullnessNoInitValue>
- Does not change
-
toStringSimple
@SideEffectFree public java.lang.String toStringSimple()
Description copied from class:CFAbstractValue
Returns the string representation, using simple (not fully-qualified) names.- Overrides:
toStringSimple
in classCFAbstractValue<NullnessNoInitValue>
- Returns:
- the string representation, using simple (not fully-qualified) names
-
-