Transformations.switchMap проблема

На официальном сайте Android

Имеется код, который позволяет получать данные по изменяемому полю

MutableLiveData userIdLiveData = ...;
 LiveData userLiveData = Transformations.switchMap(userIdLiveData, id ->
     repository.getUserById(id));

 void setUserId(String userId) {
      this.userIdLiveData.setValue(userId);
 }

Я хочу изменять, вводя поисковый запрос в SearchView.

Для этого у меня есть соответствующая переменная, и метод, который я буду дергать, при изменении текста в SearchView

private val query = mutableLiveData("")
fun handleSearchQuery(text: String?) {
        query.value = text
}

fun <T> mutableLiveData(defaultValue: T? = null): MutableLiveData<T>{
    val data = MutableLiveData<T>()

    if(defaultValue != null){
        data.value = defaultValue
    }

    return data
}

Но я не могу дописать его, кидает ошибки, он не видит trackName

private var songs : LiveData<Result<List<Song>>> = Transformations.switchMap(query, trackName ->
            getSongsBySearch(trackName))

private fun getSongsBySearch(searchQuery: String): LiveData<Result<List<Song>>>{
        return repository.getSongBySearchAlbumTerm(searchQuery)}

Нашел вот такой пример

private val query = MutableLiveData<String>()
    private val userRepo = UserRepo()
    val userNameResult: LiveData<List<User>> = Transformations.map(
            query,
            ::temp
    )
    private fun temp(name: String) = userRepo.searchUserWithName(name)

Но у меня не видит метод, когда я пытаюсь вставить вместо ::temp


Ответы (0 шт):