Joost Klitsie
06/15/2020, 3:21 PMJoost Klitsie
06/15/2020, 4:10 PMJoost Klitsie
06/15/2020, 4:10 PMfun mainViewModule() = DI.Module("MainModule") {
bind<MainContract.ViewModel>() with singleton { MainViewModel(instance()) }
bindToExisting<LoginContract.Handler, MainContract.ViewModel>()
bindToExisting<CurrentUserSummaryContract.Handler, MainContract.ViewModel>()
bindToExisting<QuizDetailsContract.Handler, MainContract.ViewModel>()
bindToExisting<QuizOverviewContract.Handler, MainContract.ViewModel>()
}
inline fun <reified I : Any, reified T : I> DI.Builder.bindToExisting() {
bind<I>() with provider {
val implementation by di.instance<T>()
implementation
}
}
salomonbrys
06/23/2020, 8:35 AMJoost Klitsie
06/23/2020, 9:29 AMsalomonbrys
06/23/2020, 5:35 PMJoost Klitsie
06/23/2020, 5:36 PMsalomonbrys
06/24/2020, 8:45 AM