T> a() =
((object : TypeToken<T>() {}).javaClass.genericSuperclass as ParameterizedType).actualTypeArguments[0]
inline fun <reified T> b() = a<T>()
class Test
fun main(args: Array<String>) {
println(a<List<Test>>())
println(b<List<Test>>())
}
java.util.List<? extends Test>
java.util.List<? extends Test>
Вообще пример не идентичен, где вложенный type параметр?
Обсуждают сегодня