У меня есть эта функция расширения:
inline operator fun <reified T : Any> SharedPreferences.get(key: String, defaultValue: T? = null): T? {
return when (T::class) {
String::class -> getString(key, defaultValue as? String ?: "") as T
Int::class -> getInt(key, defaultValue as? Int ?: -1) as T
Boolean::class -> getBoolean(key, defaultValue as? Boolean ?: false) as T
Float::class -> getFloat(key, defaultValue as? Float ?: -1f) as T
Long::class -> getLong(key, defaultValue as? Long ?: -1) as T
else -> throw UnsupportedOperationException("Not yet implemented")
}
}
Я могу использовать ее без каких-либо проблем:
![enter image description here](https://i.stack.imgur.com/NAizM.png)
Но когда я использую его внутри функции построителя потока, я получаю эту ошибку:
Недостаточно информации для вывода параметра T
![enter image description here](https://i.stack.imgur.com/IX6gw.png)