diff --git a/libraries/stdlib/src/generated/_SpecialJVM.kt b/libraries/stdlib/src/generated/_SpecialJVM.kt index 87b9c4d1210..2a9e81f32dd 100644 --- a/libraries/stdlib/src/generated/_SpecialJVM.kt +++ b/libraries/stdlib/src/generated/_SpecialJVM.kt @@ -348,21 +348,21 @@ public inline fun Stream<*>.filterIsInstance(): Stream { /** * Returns a list containing all elements that are instances of specified class */ -public fun Array.filterIsInstance(klass: Class): List { +public fun Array<*>.filterIsInstance(klass: Class): List { return filterIsInstanceTo(ArrayList(), klass) } /** * Returns a list containing all elements that are instances of specified class */ -public fun Iterable.filterIsInstance(klass: Class): List { +public fun Iterable<*>.filterIsInstance(klass: Class): List { return filterIsInstanceTo(ArrayList(), klass) } /** * Returns a stream containing all elements that are instances of specified class */ -public fun Stream.filterIsInstance(klass: Class): Stream { +public fun Stream<*>.filterIsInstance(klass: Class): Stream { return FilteringStream(this, true, { klass.isInstance(it) }) as Stream } @@ -393,7 +393,7 @@ public inline fun > Stream<*>.filterIsIns /** * Appends all elements that are instances of specified class to the given *destination* */ -public fun , R : T> Array.filterIsInstanceTo(destination: C, klass: Class): C { +public fun , R> Array<*>.filterIsInstanceTo(destination: C, klass: Class): C { for (element in this) if (klass.isInstance(element)) destination.add(element as R) return destination } @@ -401,7 +401,7 @@ public fun , R : T> Array.filterIsInstance /** * Appends all elements that are instances of specified class to the given *destination* */ -public fun , R : T> Iterable.filterIsInstanceTo(destination: C, klass: Class): C { +public fun , R> Iterable<*>.filterIsInstanceTo(destination: C, klass: Class): C { for (element in this) if (klass.isInstance(element)) destination.add(element as R) return destination } @@ -409,7 +409,7 @@ public fun , R : T> Iterable.filterIsInstanceT /** * Appends all elements that are instances of specified class to the given *destination* */ -public fun , R : T> Stream.filterIsInstanceTo(destination: C, klass: Class): C { +public fun , R> Stream<*>.filterIsInstanceTo(destination: C, klass: Class): C { for (element in this) if (klass.isInstance(element)) destination.add(element as R) return destination } diff --git a/libraries/stdlib/src/kotlin/dom/DomJVM.kt b/libraries/stdlib/src/kotlin/dom/DomJVM.kt index efc3fec54ef..ecdbe945c79 100644 --- a/libraries/stdlib/src/kotlin/dom/DomJVM.kt +++ b/libraries/stdlib/src/kotlin/dom/DomJVM.kt @@ -112,10 +112,10 @@ public val NodeList.outerHTML: String get() = toList().map { it.innerHTML }.join("") /** Returns an [[Iterator]] of all the next [[Element]] siblings */ -public fun Node.nextElements(): List = nextSiblings().filterIsInstance(javaClass()) +public fun Node.nextElements(): List = nextSiblings().filterIsInstance(javaClass()) /** Returns an [[Iterator]] of all the previous [[Element]] siblings */ -public fun Node.previousElements(): List = previousSiblings().filterIsInstance(javaClass()) +public fun Node.previousElements(): List = previousSiblings().filterIsInstance(javaClass()) public var Element.classSet: MutableSet diff --git a/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt b/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt index 582deb28686..b2a4aa3aa37 100644 --- a/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt +++ b/libraries/tools/kotlin-stdlib-gen/src/templates/SpecialJVM.kt @@ -75,8 +75,9 @@ fun specialJVM(): List { templates add f("filterIsInstanceTo(destination: C, klass: Class)") { doc { "Appends all elements that are instances of specified class to the given *destination*" } + receiverAsterisk(true) typeParam("C : MutableCollection") - typeParam("R : T") + typeParam("R") returns("C") exclude(ArraysOfPrimitives, Strings) body { @@ -89,7 +90,8 @@ fun specialJVM(): List { templates add f("filterIsInstance(klass: Class)") { doc { "Returns a list containing all elements that are instances of specified class" } - typeParam("R : T") + receiverAsterisk(true) + typeParam("R") returns("List") body { """