Package com.terheyden.value
Annotation Interface NonnullByDefault
@Documented
@Nonnull
@TypeQualifierDefault({METHOD,PARAMETER,FIELD})
@Retention(RUNTIME)
public @interface NonnullByDefault
Declares the following defaults for the entire package:
Methods don't return null.
Method params are not null.
Fields are never set to null.
Local vars can be null, sure, that's internal biz.
This code was copied and modified from ParametersAreNonnullByDefault.
See also: package-info.java https://stackoverflow.com/questions/13310994/set-findbugs-notnull-as-default-for-all-classes-under-a-package https://stackoverflow.com/questions/3550292/what-do-java-annotation-elementtype-constants-mean