@Documented @Retention(value=RUNTIME) @Target(value=TYPE) @Inherited public @interface RelevantJavaTypes
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.
public abstract Class<?>[] value
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
and Integer.class
.