package org.checkerframework.checker.nullness.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; import org.checkerframework.framework.qual.PolymorphicQualifier; /** * A polymorphic qualifier for the Rawness type system. * * <p>Any method written using @PolyRaw conceptually has two versions: one in which every instance * of @PolyRaw has been replaced by @Raw, and one in which every instance of @PolyRaw has been * replaced by @NonRaw. * * @checker_framework.manual #nullness-checker Nullness Checker * @checker_framework.manual #qualifier-polymorphism Qualifier polymorphism */ @Documented @PolymorphicQualifier(Raw.class) @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER}) public @interface PolyRaw {}