Ответ
reified позволяет использовать тип T в runtime внутри inline-функции. Обычно дженерики в Kotlin стираются, но с reified тип сохраняется.
Пример:
inline fun <reified T> checkType(item: Any): Boolean {
return item is T
}
val isString = checkType<String>("test") // true
val isInt = checkType<Int>("test") // false
Без reified нельзя проверить item is T — компилятор выдаст ошибку. Ограничение: reified можно использовать только с inline-функциями, так как код подставляется на этапе компиляции.