package checkers.javari.quals;
import java.lang.annotation.*;
import checkers.javari.JavariChecker;
import checkers.quals.SubtypeOf;
import checkers.quals.TypeQualifier;
/**
* Indicates that, for the variable on which this annotation appears,
* the object to which this variable refers can be modified via this
* reference, except its fields explicitly marked as {@link ReadOnly}.
*
* <p>
*
* This annotation is part of the Javari language.
*
* @see ReadOnly
* @see JavariChecker
* @checker.framework.manual #javari-checker Javari Checker
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
//@Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER})
@TypeQualifier
@SubtypeOf({ThisMutable.class, QReadOnly.class})
public @interface Mutable {
}