Add missing @Nonnull to return types in JRE APIs
These are used by J2CL to correctly generate nullabiltiy for
JsDoc types.
Change-Id: Ia529cd8476b749964c37d3127d488918c1c00ddf
diff --git a/user/super/com/google/gwt/emul/java/lang/Enum.java b/user/super/com/google/gwt/emul/java/lang/Enum.java
index 715ec69..0d9fef0 100644
--- a/user/super/com/google/gwt/emul/java/lang/Enum.java
+++ b/user/super/com/google/gwt/emul/java/lang/Enum.java
@@ -22,6 +22,8 @@
import java.io.Serializable;
+import javax.annotation.Nonnull;
+
import jsinterop.annotations.JsIgnore;
import jsinterop.annotations.JsType;
@@ -115,6 +117,7 @@
return super.hashCode();
}
+ @Nonnull
public final String name() {
return name != null ? name : "" + ordinal;
}
diff --git a/user/super/com/google/gwt/emul/java/lang/Throwable.java b/user/super/com/google/gwt/emul/java/lang/Throwable.java
index 5032d65..856776e 100644
--- a/user/super/com/google/gwt/emul/java/lang/Throwable.java
+++ b/user/super/com/google/gwt/emul/java/lang/Throwable.java
@@ -22,8 +22,11 @@
import java.io.PrintStream;
import java.io.Serializable;
+import javax.annotation.Nonnull;
+
import javaemul.internal.JsUtils;
import javaemul.internal.annotations.DoNotInline;
+
import jsinterop.annotations.JsMethod;
import jsinterop.annotations.JsProperty;
import jsinterop.annotations.JsType;
@@ -286,6 +289,7 @@
}
@JsMethod
+ @Nonnull
public static Throwable of(Object e) {
// If the JS error is already mapped to a Java Exception, use it.
if (e != null) {
diff --git a/user/super/com/google/gwt/emul/java/util/List.java b/user/super/com/google/gwt/emul/java/util/List.java
index 6107482..8cb824f 100644
--- a/user/super/com/google/gwt/emul/java/util/List.java
+++ b/user/super/com/google/gwt/emul/java/util/List.java
@@ -19,6 +19,8 @@
import java.util.function.UnaryOperator;
+import javax.annotation.Nonnull;
+
import jsinterop.annotations.JsIgnore;
import jsinterop.annotations.JsMethod;
import jsinterop.annotations.JsType;
@@ -82,5 +84,6 @@
return Spliterators.spliterator(this, Spliterator.ORDERED);
}
+ @Nonnull
List<E> subList(int fromIndex, int toIndex);
}
diff --git a/user/super/com/google/gwt/emul/java/util/Map.java b/user/super/com/google/gwt/emul/java/util/Map.java
index 86f0f94..06106eb 100644
--- a/user/super/com/google/gwt/emul/java/util/Map.java
+++ b/user/super/com/google/gwt/emul/java/util/Map.java
@@ -22,6 +22,8 @@
import java.util.function.BiFunction;
import java.util.function.Function;
+import javax.annotation.Nonnull;
+
import jsinterop.annotations.JsIgnore;
import jsinterop.annotations.JsType;
@@ -141,6 +143,7 @@
boolean isEmpty();
+ @Nonnull
Set<K> keySet();
@JsIgnore
@@ -203,5 +206,6 @@
int size();
+ @Nonnull
Collection<V> values();
}
diff --git a/user/test/com/google/gwt/core/client/impl/StackTraceEmulTest.java b/user/test/com/google/gwt/core/client/impl/StackTraceEmulTest.java
index 6a3822a..97e8978 100644
--- a/user/test/com/google/gwt/core/client/impl/StackTraceEmulTest.java
+++ b/user/test/com/google/gwt/core/client/impl/StackTraceEmulTest.java
@@ -67,7 +67,7 @@
String[] methodNames = getTraceJava();
StackTraceElement[] expectedTrace = new StackTraceElement[] {
- createSTE(methodNames[0], "Throwable.java", 66),
+ createSTE(methodNames[0], "Throwable.java", 69),
createSTE(methodNames[1], "Exception.java", 29),
createSTE(methodNames[2], "StackTraceExamples.java", 57),
createSTE(methodNames[3], "StackTraceExamples.java", 52),