Используя параметры типа reified, можно написать встроенную функцию, которая работает с параметром типа через отражение во время выполнения:
inline fun <reified T: Any> f() {
val clazz = T::class
// ...
}
Но когда f
вызывается с параметром, который сам по себе является общим классом, похоже, нет способа получить его фактические аргументы типа через T::class
:
f<List<Integer>>() // T::class is just kotlin.collections.List
Есть ли способ получить фактические аргументы типа овеществленного общего с помощью отражения?