diff --git a/libraries/stdlib/jdk8/src/kotlin/jvm/optionals/Optionals.kt b/libraries/stdlib/jdk8/src/kotlin/jvm/optionals/Optionals.kt index 538870eaf91..0b03e8323f5 100644 --- a/libraries/stdlib/jdk8/src/kotlin/jvm/optionals/Optionals.kt +++ b/libraries/stdlib/jdk8/src/kotlin/jvm/optionals/Optionals.kt @@ -19,14 +19,14 @@ public fun Optional.getOrNull(): T? = orElse(null) */ @SinceKotlin("1.7") @ExperimentalStdlibApi -public fun Optional.getOrDefault(defaultValue: R): R = if (isPresent) get() else defaultValue +public fun Optional.getOrDefault(defaultValue: T): T = if (isPresent) get() else defaultValue /** * Returns this [Optional]'s value if [present][Optional.isPresent], or otherwise the result of the [defaultValue] function. */ @SinceKotlin("1.7") @ExperimentalStdlibApi -public inline fun Optional.getOrElse(defaultValue: () -> R): R = +public inline fun Optional.getOrElse(defaultValue: () -> T): T = if (isPresent) get() else defaultValue() /** diff --git a/libraries/stdlib/jdk8/test/jvm/optionals/OptionalsTest.kt b/libraries/stdlib/jdk8/test/jvm/optionals/OptionalsTest.kt index 822c822e495..195d949363b 100644 --- a/libraries/stdlib/jdk8/test/jvm/optionals/OptionalsTest.kt +++ b/libraries/stdlib/jdk8/test/jvm/optionals/OptionalsTest.kt @@ -23,7 +23,7 @@ class OptionalsTest { // Return type can be a supertype assertNull(Optional.empty().getOrDefault(null)) - assertEquals(5.0, Optional.empty().getOrDefault(5.0)) + assertEquals(5.0, Optional.empty().getOrDefault(5.0)) } @Test @@ -33,7 +33,7 @@ class OptionalsTest { // Return type can be a supertype assertNull(Optional.empty().getOrElse { null }) - assertEquals(5.0, Optional.empty().getOrElse { 5.0 }) + assertEquals(5.0, Optional.empty().getOrElse { 5.0 }) } @Test