Class ElementQualifierHierarchy

java.lang.Object
org.checkerframework.framework.type.QualifierHierarchy
org.checkerframework.framework.type.ElementQualifierHierarchy
Direct Known Subclasses:
AccumulationAnnotatedTypeFactory.AccumulationQualifierHierarchy, ClassValAnnotatedTypeFactory.ClassValQualifierHierarchy, MethodValAnnotatedTypeFactory.MethodValQualifierHierarchy, MostlyNoElementQualifierHierarchy, UpperBoundAnnotatedTypeFactory.UpperBoundQualifierHierarchy

@AnnotatedFor("nullness") public abstract class ElementQualifierHierarchy extends QualifierHierarchy
A QualifierHierarchy where qualifiers may be represented by annotations with elements.

ElementQualifierHierarchy uses a QualifierKindHierarchy to model the relationships between qualifiers. (By contrast, MostlyNoElementQualifierHierarchy uses the QualifierKindHierarchy to implement isSubtype, leastUpperBound, and greatestLowerBound methods for qualifiers without elements.)

Subclasses can override createQualifierKindHierarchy(Collection) to return a subclass of QualifierKindHierarchy.

  • Field Details

  • Constructor Details

    • ElementQualifierHierarchy

      protected ElementQualifierHierarchy(Collection<Class<? extends Annotation>> qualifierClasses, Elements elements, GenericAnnotatedTypeFactory<?,?,?,?> atypeFactory)
      Creates a ElementQualifierHierarchy from the given classes.
      Parameters:
      qualifierClasses - classes of annotations that are the qualifiers for this hierarchy
      elements - element utils
      atypeFactory - the associated type factory
  • Method Details