diff --git a/j2kt/jre/java/common/javaemul/lang/JavaMap.kt b/j2kt/jre/java/common/javaemul/lang/JavaMap.kt index e728c25..578b5d7 100644 --- a/j2kt/jre/java/common/javaemul/lang/JavaMap.kt +++ b/j2kt/jre/java/common/javaemul/lang/JavaMap.kt @@ -37,13 +37,13 @@ interface JavaMap : MutableMap { // TODO(b/243046587): Rewrite to handle case in which t is not mutable override fun putAll(t: Map) = java_putAll(t as MutableMap) - fun java_compute(key: K, remappingFunction: BiFunction): V? = + fun java_compute(key: K, remappingFunction: BiFunction): V? = default_compute(key, remappingFunction) fun java_computeIfAbsent(key: K, mappingFunction: Function): V = default_computeIfAbsent(key, mappingFunction) - fun java_computeIfPresent(key: K, remappingFunction: BiFunction): V? = + fun java_computeIfPresent(key: K, remappingFunction: BiFunction): V? = default_computeIfPresent(key, remappingFunction) fun java_containsKey(key: Any?): Boolean @@ -97,7 +97,7 @@ fun MutableMap.java_remove(key: Any?): V? = remove(key as K) fun MutableMap.java_compute( key: K, - mappingFunction: BiFunction + mappingFunction: BiFunction ): V? = if (this is JavaMap) java_compute(key, mappingFunction) else default_compute(key, mappingFunction) @@ -110,7 +110,7 @@ fun MutableMap.java_computeIfAbsent( fun MutableMap.java_computeIfPresent( key: K, - mappingFunction: BiFunction + mappingFunction: BiFunction ): V? = if (this is JavaMap) java_computeIfPresent(key, mappingFunction) else default_computeIfPresent(key, mappingFunction) @@ -150,7 +150,7 @@ private fun MutableMap.default_forEach(action: BiConsumer MutableMap.default_compute( key: K, - remappingFunction: BiFunction + remappingFunction: BiFunction ): V? { val oldValue = this[key] val newValue = remappingFunction.apply(key, oldValue) @@ -184,7 +184,7 @@ private fun MutableMap.default_computeIfAbsent( private fun MutableMap.default_computeIfPresent( key: K, - remappingFunction: BiFunction + remappingFunction: BiFunction ): V? { val oldValue = this[key] if (oldValue != null) { diff --git a/j2kt/jre/javatests/smoke/CollectionsTest.java b/j2kt/jre/javatests/smoke/CollectionsTest.java index 903d43a..bf68f5b 100644 --- a/j2kt/jre/javatests/smoke/CollectionsTest.java +++ b/j2kt/jre/javatests/smoke/CollectionsTest.java @@ -247,9 +247,10 @@ public boolean containsValue(@Nullable Object value) { // The following overrides are only there to check that the override (with the Java signatures // of the method) compiles. @Override - @SuppressWarnings("nullness:override.param") // Checker expects @PolyNull (missing in JSpecify) - public V compute( - K key, BiFunction remappingFunction) { + @SuppressWarnings("nullness:override") // Checker expects @PolyNull (missing in JSpecify) + public @Nullable V compute( + K key, + BiFunction remappingFunction) { return super.compute(key, remappingFunction); } @@ -260,9 +261,9 @@ public V computeIfAbsent(K key, Function mappingFunction } @Override - @SuppressWarnings("nullness:override.param") // Checker expects @PolyNull (missing in JSpecify) - public V computeIfPresent( - K key, BiFunction remappingFunction) { + @SuppressWarnings("nullness:override") // Checker expects @PolyNull (missing in JSpecify) + public @Nullable V computeIfPresent( + K key, BiFunction remappingFunction) { return super.computeIfPresent(key, remappingFunction); }