public class GraphQualifierHierarchy extends MultiGraphQualifierHierarchy
This class is immutable and can be only created through MultiGraphQualifierHierarchy.MultiGraphFactory
.
MultiGraphQualifierHierarchy.MultiGraphFactory
bottoms, polyQualifiers, supertypesDirect, supertypesTransitive, tops
Constructor and Description |
---|
GraphQualifierHierarchy(MultiGraphQualifierHierarchy.MultiGraphFactory f,
AnnotationMirror bottom) |
Modifier and Type | Method and Description |
---|---|
protected void |
finish(QualifierHierarchy qualHierarchy,
Map<AnnotationMirror,Set<AnnotationMirror>> fullMap,
Map<AnnotationMirror,AnnotationMirror> polyQualifiers,
Set<AnnotationMirror> tops,
Set<AnnotationMirror> bottoms,
Object... args)
Method to finalize the qualifier hierarchy before it becomes unmodifiable.
|
Set<? extends AnnotationMirror> |
getBottomAnnotations()
Returns the bottom type qualifiers in the hierarchy.
|
Set<? extends AnnotationMirror> |
getTopAnnotations()
Returns the top qualifiers for this hierarchy.
|
boolean |
isSubtype(Collection<? extends AnnotationMirror> rhs,
Collection<? extends AnnotationMirror> lhs)
Tests whether all qualifiers in
subQualifiers are a subqualifier or equal to the
qualifier in the same hierarchy in superQualifiers . |
addPolyRelations, findBottoms, findLub, findTops, getBottomAnnotation, getPolymorphicAnnotation, getTopAnnotation, greatestLowerBound, isPolymorphicQualifier, isSubtype, isValid, leastUpperBound, toString, transitiveClosure
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
assertSameSize, assertSameSize, canHaveEmptyAnnotationSet, findAnnotationInHierarchy, findAnnotationInSameHierarchy, getWidth, greatestLowerBound, greatestLowerBounds, greatestLowerBounds, greatestLowerBoundsTypeVariable, greatestLowerBoundTypeVariable, isSubtype, isSubtype, isSubtypeTypeVariable, isSubtypeTypeVariable, leastUpperBound, leastUpperBounds, leastUpperBounds, leastUpperBoundsTypeVariable, leastUpperBoundTypeVariable, numberOfIterationsBeforeWidening, updateMappingToMutableSet, widenedUpperBound
public GraphQualifierHierarchy(MultiGraphQualifierHierarchy.MultiGraphFactory f, AnnotationMirror bottom)
protected void finish(QualifierHierarchy qualHierarchy, Map<AnnotationMirror,Set<AnnotationMirror>> fullMap, Map<AnnotationMirror,AnnotationMirror> polyQualifiers, Set<AnnotationMirror> tops, Set<AnnotationMirror> bottoms, Object... args)
MultiGraphQualifierHierarchy
finish
in class MultiGraphQualifierHierarchy
public Set<? extends AnnotationMirror> getTopAnnotations()
The top qualifier is inferred from the hierarchy, as being the only one without any super qualifiers
getTopAnnotations
in interface QualifierHierarchy
getTopAnnotations
in class MultiGraphQualifierHierarchy
public Set<? extends AnnotationMirror> getBottomAnnotations()
QualifierHierarchy
QualifierHierarchy.getWidth()
.getBottomAnnotations
in interface QualifierHierarchy
getBottomAnnotations
in class MultiGraphQualifierHierarchy
public boolean isSubtype(Collection<? extends AnnotationMirror> rhs, Collection<? extends AnnotationMirror> lhs)
QualifierHierarchy
subQualifiers
are a subqualifier or equal to the
qualifier in the same hierarchy in superQualifiers
.isSubtype
in interface QualifierHierarchy
isSubtype
in class MultiGraphQualifierHierarchy
rhs
- set of qualifiers; exactly one per hierarchylhs
- set of qualifiers; exactly one per hierarchysubQualifiers
are a subqualifier or equal to the
qualifier in the same hierarchy in superQualifiers