fonamentViewModelOf
inline fun <U : FonamentUIState> Module.fonamentViewModelOf(crossinline constructor: () -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
Declare a Module.fonamentViewModel definition by resolving a constructor reference for the dependency. The resolution is done at compile time by leveraging inline functions, no reflection is required.
class AboutViewModel : FonamentViewModel<AboutUIState>(initialUIState = AboutUIState)
val aboutViewModelModule = module {
fonamentViewModelOf(::AboutViewModel)
}Content copied to clipboard
inline fun <U : FonamentUIState, T1> Module.fonamentViewModelOf(crossinline constructor: (T1) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2> Module.fonamentViewModelOf(crossinline constructor: (T1, T2) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>
inline fun <U : FonamentUIState, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> Module.fonamentViewModelOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) -> FonamentViewModel<U>, noinline options: BeanDefinition<FonamentViewModel<U>>.() -> Unit? = null): KoinDefinition<FonamentViewModel<U>>