У меня есть класс оболочки данных с параметром T. В этом классе есть function
с универсальным контейнером с nullable
типом: T?(например, LiveData )
class Wrapper<T> {
fun add (data: LiveData<T?>) {
// ...
}
}
В этом месте мне действительно нужен именно такой тип.Когда я пытаюсь использовать этот метод и передать ненулевой параметр типа:
class Program {
fun get() {
// some generic container, e.g. LiveData
val data: LiveData<Int> = MutableLiveData()
val wrapper = Wrapper<Int>()
wrapper.add(data)
^^^^ error
}
}
это была ошибка «Несоответствие типов»: ссылка на изображение
Type mismatch: inferred type is LiveData<Int> but LiveData<Int?> was expected
Какс этим бороться?Как умно приводить универсальный параметр типа от ненулевого к обнуляемому?