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

framework.src.org.checkerframework.framework.source.SuppressWarningsKeys Maven / Gradle / Ivy

Go to download

Checker Qual is the set of annotations (qualifiers) and supporting classes used by the Checker Framework to type check Java source code. Please see artifact: org.checkerframework:checker

There is a newer version: 3.45.0
Show newest version
package org.checkerframework.framework.source;

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

/**
 * Specifies the argument(s) that this checker recognizes for suppressing
 * warnings via the {@link SuppressWarnings} annotation.  Any of the given
 * arguments suppresses all warnings related to the checker.
 * 

* * In order for this annotation to * have an effect, it must be placed on the declaration of a class that extends * {@link SourceChecker}. * *

* * For example, warnings issued by the Nullness Checker can be suppressed using * {@code @SuppressWarnings("nullness")} because {@link org.checkerframework.checker.nullness.NullnessChecker} is * annotated with {@code @SuppressWarningsKey("nullness")}. * * TODO: the previous paragraph about the Nullness Checker is out-of-date. * We only consider this meta-annotation on the most-concrete SourceChecker subclass * and only use the suppression keys listed there. * For the Nullness Checker we add multiple suppression keys along the hierarchy. * Should we change the semantics of this annotation to look for it on all * classes from the most-concrete class up to SourceChecker? * That would make the behavior consistent with e.g. our SupportedOptions. * Is there ever a reason where that would be unwanted? */ @Inherited @Documented @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public @interface SuppressWarningsKeys { /** * @return array of strings, any one of which causes this checker to * suppress a warning when passed as the argument of * {@literal @}{@link SuppressWarnings} */ String[] value(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy