Files
kotlin/compiler/testData/codegen/box/functions/functionNtoStringGeneric.kt
2016-11-09 21:41:12 +03:00

27 lines
680 B
Kotlin
Vendored

// TODO: muted automatically, investigate should it be ran for JS or not
// IGNORE_BACKEND: JS
// WITH_REFLECT
import kotlin.test.assertEquals
fun <T> bar(): String {
return { t: T -> t }.toString()
}
class Baz<T, V> {
fun <V : T> baz(v: V): String {
return (fun(t: List<T>): V = v).toString()
}
}
open class Foo<T, U : List<T>>(val lambda: (T) -> U)
class Bar<T> : Foo<T, List<T>>({ listOf(it) })
fun box(): String {
assertEquals("(T) -> T", bar<String>())
assertEquals("(kotlin.collections.List<T>) -> V", Baz<String, Int>().baz<String>(""))
assertEquals("(T) -> kotlin.collections.List<T>", Bar<Int>().lambda.toString())
return "OK"
}