All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.checkerframework.framework.qual.DefaultQualifierInHierarchy Maven / Gradle / Ivy

The newest version!
package org.checkerframework.framework.qual;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Indicates that the annotated qualifier is the default qualifier in the qualifier hierarchy: it
 * applies if the programmer writes no explicit qualifier and no other default has been specified
 * for the location.
 *
 * 

Other defaults can be specified for a checker via the {@link DefaultFor} meta-annotation, * which takes precedence over {@code DefaultQualifierInHierarchy}, or via {@code * GenericAnnotatedTypeFactory.addCheckedCodeDefaults()}. Also, the CLIMB-to-top rule applies unless * explicitly overruled. * *

The {@link DefaultQualifier} annotation, which targets Java code elements, takes precedence * over {@code DefaultQualifierInHierarchy}. * *

Each type qualifier hierarchy may have at most one qualifier marked as {@code * DefaultQualifierInHierarchy}. * * @checker_framework.manual #effective-qualifier The effective qualifier on a type (defaults and * inference) * @checker_framework.manual #defaults Default qualifiers for unannotated types * @see org.checkerframework.framework.qual.DefaultQualifier */ @Documented @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.ANNOTATION_TYPE) public @interface DefaultQualifierInHierarchy {}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy