protected class NullnessAnnotatedTypeFactory.NullnessQualifierHierarchy extends InitializationAnnotatedTypeFactory.InitializationQualifierHierarchy
MultiGraphQualifierHierarchy.MultiGraphFactory
bottoms, polymorphicQualifier, polyQualifiers, supertypesGraph, supertypesMap, tops, typeQualifiers
Constructor and Description |
---|
NullnessQualifierHierarchy(MultiGraphQualifierHierarchy.MultiGraphFactory f,
Object[] arg) |
Modifier and Type | Method and Description |
---|---|
boolean |
isSubtype(AnnotationMirror rhs,
AnnotationMirror lhs)
Most qualifiers have no value fields.
|
AnnotationMirror |
leastUpperBound(AnnotationMirror a1,
AnnotationMirror a2)
Returns the least upper bound for the qualifiers a1 and a2.
|
greatestLowerBound, isSubtypeInitialization, leastUpperBoundInitialization, lubTypeFrame
addPolyRelations, buildFullMap, findBottoms, findLub, findTops, finish, getBottomAnnotation, getBottomAnnotations, getPolymorphicAnnotation, getTopAnnotation, getTopAnnotations, getTypeQualifiers, greatestLowerBoundTypeVariable, isSubtype, isSubtypeTypeVariable, isSubtypeTypeVariable, leastUpperBoundTypeVariable, toString
canHaveEmptyAnnotationSet, findAnnotationInHierarchy, findAnnotationInSameHierarchy, findCorrespondingAnnotation, getAnnotationInHierarchy, getWidth, greatestLowerBound, greatestLowerBounds, greatestLowerBounds, greatestLowerBoundsTypeVariable, isSubtype, isSubtype, isValid, leastUpperBound, leastUpperBounds, leastUpperBounds, leastUpperBoundsTypeVariable, replacePolyAll, updateMappingToMutableSet
public NullnessQualifierHierarchy(MultiGraphQualifierHierarchy.MultiGraphFactory f, Object[] arg)
public boolean isSubtype(AnnotationMirror rhs, AnnotationMirror lhs)
MultiGraphQualifierHierarchy
When client specifies an annotation, a1, to be a subtype of annotation with values, a2, then a1 is a subtype of all instances of a2 regardless of a2 values.
isSubtype
in class MultiGraphQualifierHierarchy
rhs
- the right-hand side, i.e. the sub qualifierlhs
- the left-hand side, i.e. the super qualifierpublic AnnotationMirror leastUpperBound(AnnotationMirror a1, AnnotationMirror a2)
QualifierHierarchy
Examples:
leastUpperBound
in class MultiGraphQualifierHierarchy