Annotation Interface UnmodifiableParam
@Documented
@Retention(RUNTIME)
@Target({TYPE_USE,TYPE_PARAMETER})
public @interface UnmodifiableParam
Convenience alias that is syntactic sugar for
@MaybeModifiable. It may only be
written within a formal parameter type.
You can write @UnmodifiableParam to indicate that a method does not change its
parameter. From the method's point of view, the parameter is unmodifiable. This is reference
unmodifiability, because another alias can change the value, unlike @Unmodifiable
which means object immutability: no alias can change the value.
- See the Checker Framework Manual:
- Modifiability Checker