From bcec41c779c52159253147cb4fc49b6428366776 Mon Sep 17 00:00:00 2001 From: James Strachan Date: Wed, 12 Sep 2012 14:56:28 +0100 Subject: [PATCH] allow nullable expressions to be used for lazily creating new items if there is not a value in the Map --- libraries/stdlib/src/kotlin/Maps.kt | 2 +- libraries/stdlib/test/CollectionTest.kt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/stdlib/src/kotlin/Maps.kt b/libraries/stdlib/src/kotlin/Maps.kt index 3e610d84e78..0f51a8c77ab 100644 --- a/libraries/stdlib/src/kotlin/Maps.kt +++ b/libraries/stdlib/src/kotlin/Maps.kt @@ -34,7 +34,7 @@ val Map.Entry.value : V * * @includeFunctionBody ../../test/MapTest.kt getOrElse */ -public inline fun Map.getOrElse(key: K, defaultValue: ()-> V) : V { +public inline fun Map.getOrElse(key: K, defaultValue: ()-> V?) : V? { val current = this.get(key) if (current != null) { return current diff --git a/libraries/stdlib/test/CollectionTest.kt b/libraries/stdlib/test/CollectionTest.kt index 9c1c3e66ddf..08e7bdd4a03 100644 --- a/libraries/stdlib/test/CollectionTest.kt +++ b/libraries/stdlib/test/CollectionTest.kt @@ -184,7 +184,7 @@ class CollectionTest { assertEquals(4, byLength.size()) val l3 = byLength.getOrElse(3, {ArrayList()}) - assertEquals(2, l3.size) + assertEquals(2, l3?.size) } test fun makeString() {