P
Size: a a a
P
P
P
I
I
P
I
P
P
P
AS
AD
AD
I
L
АЕ
АЕ
L
class CalcFragment : BaseMvpFragment<CalcMvpView, CalcPresenter>(), CalcMvpView{
@Inject lateinit var lazyPresenter: Lazy<P>
@InjectPresenter lateinit var presenter: CalcPresenter
@ProvidePresenter fun providePresenter(): CalcPresenter = lazyPresenter.get()
}
@InnjectViewState
class CalcPresenter (...) : BasePresenter<CalcMvpView>() {
}
@Module
class CalcModule {
@Provides
@FragmentScope
fun providePresenter(...) = CalcPresenter()
}
@Module
abstract class AppContainerInjectors {
@FragmentScope
@ContributesAndroidInjector(modules = [CalcModule::class])
abstract fun calcFragment(): CalcFragment
}
abstract class AppModule {
@Singleton
@Binds
@AppContext
abstract fun bindAppContext(app: App): Context
@Module
abstract class Injectors {
@ActivityScope
@ContributesAndroidInjector(modules = [AppContainerInjectors::class])
abstract fun appContainer(): AppContainer
}
}