I found inconvenient that checkNotNull() precondition in guava is not marked with @Nonull annotation. Consider following example: State(Set<Model> models, Set<Variation> variations) { this.models = checkNotNull(models); this.variations = checkNotNull(variations); if (this.variations == null) { throw new IllegalArgumentException(); } this.engine = createEngine(); } So IDE could not found that varia