I answer to myself 😉
With Kodein DI 5.3 :
val kodein = Kodein {
bind<MainController>() with provider {
val view = receiver as? MainView ?: throw IllegalStateException("MainController needs a MainView receiver")
MainController(view)
}
}
With Kodein DI 6.0 :
val kodein = Kodein {
bind<MainController>() with provider {
val view = context as? MainView ?: throw IllegalStateException("MainController needs a MainView receiver")
MainController(view)
}
}