From 6549dda5fb96b69f2fc80b8a7088047ddc52af4f Mon Sep 17 00:00:00 2001 From: Ilya Matveev Date: Wed, 12 Apr 2017 18:23:20 +0700 Subject: [PATCH] stdlib: Uncomment extensions with reified parameters --- .../main/kotlin/kotlin/collections/Collections.kt | 4 +--- .../src/main/kotlin/kotlin/sequences/Sequences.kt | 12 ++++-------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/runtime/src/main/kotlin/kotlin/collections/Collections.kt b/runtime/src/main/kotlin/kotlin/collections/Collections.kt index d2e3835e7f6..137098677d4 100644 --- a/runtime/src/main/kotlin/kotlin/collections/Collections.kt +++ b/runtime/src/main/kotlin/kotlin/collections/Collections.kt @@ -952,8 +952,6 @@ public inline fun > Iterable.filterIndexedTo(d /** * Returns a list containing all elements that are instances of specified type parameter R. */ -/* -@FixmeReified public inline fun Iterable<*>.filterIsInstance(): List<@kotlin.internal.NoInfer R> { return filterIsInstanceTo(ArrayList()) } @@ -965,7 +963,7 @@ public inline fun > Iterable<*>.filterIsI for (element in this) if (element is R) destination.add(element) return destination } -*/ + /** * Returns a list containing all elements not matching the given [predicate]. diff --git a/runtime/src/main/kotlin/kotlin/sequences/Sequences.kt b/runtime/src/main/kotlin/kotlin/sequences/Sequences.kt index ef3df0fc8bb..78ec20af21d 100644 --- a/runtime/src/main/kotlin/kotlin/sequences/Sequences.kt +++ b/runtime/src/main/kotlin/kotlin/sequences/Sequences.kt @@ -941,22 +941,18 @@ public inline fun > Sequence.filterIndexedTo(d /** * Returns a sequence containing all elements that are instances of specified type parameter R. */ -@FixmeReified public inline fun Sequence<*>.filterIsInstance(): Sequence<@kotlin.internal.NoInfer R> { - //@Suppress("UNCHECKED_CAST") - //return filter { it is R } as Sequence - TODO() + @Suppress("UNCHECKED_CAST") + return filter { it is R } as Sequence } /** * Appends all elements that are instances of specified type parameter R to the given [destination]. */ -@FixmeReified @Suppress("UNUSED_PARAMETER") public inline fun > Sequence<*>.filterIsInstanceTo(destination: C): C { - //for (element in this) if (element is R) destination.add(element) - //return destination - TODO() + for (element in this) if (element is R) destination.add(element) + return destination } /**