A compile-time validator for correct usage of the
NotNull
and
Nullable
annotations.
The validation process checks the following items.
- Error: an element is annotated with both
NotNull
and Nullable
.
- Error: an method which returns
void
is annotated with NotNull
or Nullable
.
- Error: an element with a primitive type is annotated with
Nullable
.
- Error: a parameter is annotated with
NotNull
, but the method overrides or implements a method where the parameter is annotated Nullable
.
- Error: a method is annotated with
Nullable
, but the method overrides or implements a method that is annotated with NotNull
.
- Warning: an element with a primitive type is annotated with
NotNull
.
- Warning: a parameter is annotated with
NotNull
, but the method overrides or implements a method where the parameter is not annotated.
- Warning: a method is annotated with
Nullable
, but the method overrides or implements a method that is not annotated.
In the future, the validation process may be updated to check the following additional items.
- Warning: a parameter is not annotated, but the method overrides or implements a method where the parameter is annotated with
NotNull
or Nullable
.
- Warning: a method is not annotated, but the method overrides or implements a method that is annotated with with
NotNull
or Nullable
.