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

org.checkerframework.checker.interning.qual.InternedDistinct Maven / Gradle / Ivy

There is a newer version: 4.1.2
Show newest version
package org.checkerframework.checker.interning.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.DefaultFor;
import org.checkerframework.framework.qual.ImplicitFor;
import org.checkerframework.framework.qual.LiteralKind;
import org.checkerframework.framework.qual.SubtypeOf;
import org.checkerframework.framework.qual.TypeUseLocation;

/**
 * Indicates that no other value is {@code equals()} to the given value. Therefore, it is correct to
 * use == to test an InternedDistinct value for equality against any other value.
 *
 * 

This is a stronger property than {@link Interned}, but a weaker property than every value of a * Java type being interned. * * @see org.checkerframework.checker.interning.InterningChecker * @checker_framework.manual #interning-checker Interning Checker */ @SubtypeOf(Interned.class) @DefaultFor(value = {TypeUseLocation.LOWER_BOUND}) @ImplicitFor( literals = {LiteralKind.NULL}, typeNames = {Void.class}) @Documented @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER}) public @interface InternedDistinct {}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy