diff --git a/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/OptionalTemplates.java b/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/OptionalTemplates.java index ed8bce94..1dc59817 100644 --- a/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/OptionalTemplates.java +++ b/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/OptionalTemplates.java @@ -14,6 +14,7 @@ import java.util.function.Function; import java.util.function.Predicate; import java.util.function.Supplier; import java.util.stream.Stream; +import javax.annotation.Nullable; /** Refaster templates related to expressions dealing with {@link Optional}s. */ final class OptionalTemplates { @@ -24,7 +25,7 @@ final class OptionalTemplates { // parentheses around the null check, but that's currently not the case. Try to fix that. @BeforeTemplate @SuppressWarnings("TernaryOperatorOptionalNegativeFiltering" /* Special case. */) - Optional before(T object) { + Optional before(@Nullable T object) { return object == null ? Optional.empty() : Optional.of(object); } diff --git a/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/StringTemplates.java b/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/StringTemplates.java index fd37b8a8..8ee90f92 100644 --- a/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/StringTemplates.java +++ b/error-prone-contrib/src/main/java/tech/picnic/errorprone/refastertemplates/StringTemplates.java @@ -14,6 +14,7 @@ import com.google.errorprone.refaster.annotation.BeforeTemplate; import java.util.Arrays; import java.util.Collection; import java.util.Optional; +import javax.annotation.Nullable; /** Refaster templates related to expressions dealing with {@link String}s. */ // XXX: Should we prefer `s -> !s.isEmpty()` or `not(String::isEmpty)`? @@ -37,7 +38,7 @@ final class StringTemplates { /** Prefer {@link Strings#isNullOrEmpty(String)} over the more verbose alternative. */ static final class StringIsNullOrEmpty { @BeforeTemplate - boolean before(String str) { + boolean before(@Nullable String str) { return str == null || str.isEmpty(); } diff --git a/pom.xml b/pom.xml index 49819a8d..1d50626b 100644 --- a/pom.xml +++ b/pom.xml @@ -129,7 +129,7 @@ 1.8.2 ${version.error-prone-orig} v${version.error-prone-orig}-picnic-1 - 2.9.0 + 2.10.0 0.1.4 3.0.0 1.0 @@ -1446,8 +1446,13 @@ -Xep:BetaApi:OFF -Xep:Java7ApiChecker:OFF + + -Xep:Java8ApiChecker:OFF -Xep:StaticOrDefaultInterfaceMethod:OFF + + -Xep:VoidMissingNullable:OFF -XepOpt:NullAway:AnnotatedPackages=tech.picnic -XepOpt:NullAway:AssertsEnabled=true -XepOpt:NullAway:CheckOptionalEmptiness=true