@SubtypeOf(value=AssignsFields.class)
@DefaultQualifierInHierarchy
@DefaultFor(value=EXCEPTION_PARAMETER)
@Documented
@Retention(value=RUNTIME)
@Target(value={TYPE_USE,TYPE_PARAMETER})
public @interface Mutable
Indicates that the annotated reference is an immutable reference to an
immutable object.
An Immutable object cannot be modified. Its fields may be reassigned or
mutated only if they are explicitly marked as Mutable or Assignable.
- See the Checker Framework Manual:
- IGJ Checker