Annotation Type RelevantJavaTypes
-
@Documented @Retention(RUNTIME) @Target(TYPE) @Inherited public @interface RelevantJavaTypes
An annotation on a SourceChecker subclass to specify which Java types are processed by the checker. In source code, the checker's type qualifiers may only appear on the given types and their subtypes. If a checker is not annotated with this annotation, then the checker's qualifiers may appear on any type.This restriction is coarse-grained in that it applies to all type annotations for a given checker. To have different restrictions for different Java types, override
org.checkerframework.common.basetype.BaseTypeVisitor#visitAnnotatedType(List, Tree)
.This is orthogonal to Java's
@Target
annotation; each enforces a different type of restriction on what can be written in source code.
-
-
Required Element Summary
Required Elements Modifier and Type Required Element Description java.lang.Class<?>[]
value
Classes where a type annotation supported by this checker may be written.
-
-
-
Element Detail
-
value
java.lang.Class<?>[] value
Classes where a type annotation supported by this checker may be written.Object[].class
means that the checker processes all array types. No distinction among array types is currently made, and no other array class should be supplied to@RelevantJavaTypes
.If a checker processes both primitive and boxed types, both must be specified separately, for example as
int.class
andInteger.class
.- Returns:
- classes where a type annotation supported by this checker may be written
-
-