[K/JS] Support essential Kotlin collections (List, MutableList, Set, MutableSet, Map, MutableMap) for exporting into JS

^KT-34995 Fixed
^KT-44871 Fixed
This commit is contained in:
Artem Kobzar
2024-01-24 11:14:46 +00:00
committed by Space Team
parent b71797383f
commit 8d1a90c23c
42 changed files with 1431 additions and 47 deletions
@@ -54,3 +54,27 @@ fun foo5(<!NON_EXPORTABLE_TYPE("parameter; kotlin.Function1<kotlin.Unit, kotlin.
@JsExport
fun foo6(x: (A) -> A) {
}
@JsExport
fun foo7(x: List<Int>) {
}
@JsExport
fun foo8(x: MutableList<Int>) {
}
@JsExport
fun foo9(x: Set<Int>) {
}
@JsExport
fun foo10(x: MutableSet<Int>) {
}
@JsExport
fun foo11(x: Map<String, Int>) {
}
@JsExport
fun foo12(x: MutableMap<String, Int>) {
}
@@ -54,3 +54,27 @@ fun foo5(<!NON_EXPORTABLE_TYPE("parameter; (Unit) -> Unit")!>x: (Unit) -> Unit<!
@JsExport
fun foo6(x: (A) -> A) {
}
@JsExport
fun foo7(x: List<Int>) {
}
@JsExport
fun foo8(x: MutableList<Int>) {
}
@JsExport
fun foo9(x: Set<Int>) {
}
@JsExport
fun foo10(x: MutableSet<Int>) {
}
@JsExport
fun foo11(x: Map<String, Int>) {
}
@JsExport
fun foo12(x: MutableMap<String, Int>) {
}
@@ -5,11 +5,17 @@ package foo {
@kotlin.js.JsExport public var x2: foo.C
@kotlin.js.JsExport public fun bar(): foo.C
@kotlin.js.JsExport public fun foo(/*0*/ x: foo.C): kotlin.Unit
@kotlin.js.JsExport public fun foo10(/*0*/ x: kotlin.collections.MutableSet<kotlin.Int>): kotlin.Unit
@kotlin.js.JsExport public fun foo11(/*0*/ x: kotlin.collections.Map<kotlin.String, kotlin.Int>): kotlin.Unit
@kotlin.js.JsExport public fun foo12(/*0*/ x: kotlin.collections.MutableMap<kotlin.String, kotlin.Int>): kotlin.Unit
@kotlin.js.JsExport public fun foo2(): kotlin.Unit
@kotlin.js.JsExport public fun foo3(/*0*/ x: kotlin.Unit): kotlin.Unit
@kotlin.js.JsExport public fun foo4(/*0*/ x: () -> kotlin.Unit): kotlin.Unit
@kotlin.js.JsExport public fun foo5(/*0*/ x: (kotlin.Unit) -> kotlin.Unit): kotlin.Unit
@kotlin.js.JsExport public fun foo6(/*0*/ x: (foo.A) -> foo.A): kotlin.Unit
@kotlin.js.JsExport public fun foo7(/*0*/ x: kotlin.collections.List<kotlin.Int>): kotlin.Unit
@kotlin.js.JsExport public fun foo8(/*0*/ x: kotlin.collections.MutableList<kotlin.Int>): kotlin.Unit
@kotlin.js.JsExport public fun foo9(/*0*/ x: kotlin.collections.Set<kotlin.Int>): kotlin.Unit
@kotlin.js.JsExport public final class A {
public constructor A(/*0*/ x: foo.C, /*1*/ y: foo.C)