https://github.com/Miha-x64/Mikes_IDEA_extensions
А помоги понять за подсказу по лямбдам и инлайн функциям:
Есть функциия у меня:
fun <T, LD : LiveData<T>> observe(liveData: LD, onChanged: (T) -> Unit) {
liveData.observe(this, Observer {
it?.let(onChanged)
})
}
Вызываю вот так:
observe(viewModel.refreshingLiveData) {
progress?.setInProgress(it)
}
Плагин ругаеццо, что нельзя такую лямбду заинлайнить.
Какой профит я получу, если сделаю её inline с crossinline onChanged? Посмотрел по байткоду, количество LINENUMBER будет меньше, меньше генерит мусора если декомпильнуть. Правильно ли я понимаю что в этом кейсе именно в этом состоит оптимизация? Или есть ещё чего то что я не знаю\не заметил?