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

checkers.quals.PolyAll Maven / Gradle / Ivy

Go to download

Annotations ("type qualifiers") from the checker framework, backported so they can be used in pre-JDK8 applications

There is a newer version: 1.7.5
Show newest version
package checkers.quals;

import java.lang.annotation.*;

import checkers.nullness.quals.PolyNull;
import checkers.interning.quals.PolyInterned;

/**
 * A polymorphic type qualifier that varies over all type hierarchies.
 * 

* * Writing @PolyAll is equivalent to writing a polymorphic * qualifier for every type system (whether such a qualifier has been * declared or not). *

* * The @PolyAll annotation applies to every type qualifier hierarchy for * which no explicit qualifier is written. For example, a declaration like * @PolyAll @NonNull String s is polymorphic over every type system * \emph{except} the nullness type system, for which the type is fixed at * @NonNull. *

* * * * To support @PolyAll in a type system, simply add it to the * list of @TypeQualifiers. * * @see PolyNull * @see PolyInterned * @see PolymorphicQualifier * @see QualifierPolymorphism */ @Documented @Retention(RetentionPolicy.RUNTIME) @PolymorphicQualifier public @interface PolyAll { // TODO: support multiple variables using an id, then uncomment some Javadoc //int value() default 0; }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy