Package-level declarations

Types

Link copied to clipboard

Functions

Link copied to clipboard
inline fun <T> BeanDefinition<out T>.bind()

Add a secondary type binding to this definition. Used within withOptions { } block.

Link copied to clipboard
fun BeanDefinition<*>.binds(classes: List<KClass<*>>)

Add multiple secondary type bindings to this definition. Used within withOptions { } block.

Link copied to clipboard

Mark this definition to be created eagerly at startup. Used within withOptions { } block.

Link copied to clipboard
inline fun <R> Module.factoryOf(crossinline constructor: () -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>

Declare a Module.factory definition by resolving a constructor reference for the dependency. The resolution is done at compile time by leveraging inline functions, no reflection is required.

inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1> Module.factoryOf(crossinline constructor: (T1) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2> Module.factoryOf(crossinline constructor: (T1, T2) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3> Module.factoryOf(crossinline constructor: (T1, T2, T3) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9> Module.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1> ScopeDSL.factoryOf(crossinline constructor: (T1) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2> ScopeDSL.factoryOf(crossinline constructor: (T1, T2) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9> ScopeDSL.factoryOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>

inline fun <R> ScopeDSL.factoryOf(crossinline constructor: () -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>

Declare a ScopeDSL.factory definition by resolving a constructor reference for the dependency. The resolution is done at compile time by leveraging inline functions, no reflection is required.

Link copied to clipboard
inline fun <T> BeanDefinition<*>.named()

Assign a type-based qualifier to this definition. Used within withOptions { } block.

Assign a string-based qualifier to this definition. Used within withOptions { } block.

Link copied to clipboard
inline fun <R> Scope.new(constructor: () -> R): R

Auto resolve a class dependencies by using its constructor reference. The resolution is done at compile time by leveraging inline functions, no reflection is required.

inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) -> R): R
inline fun <R, T1> Scope.new(constructor: (T1) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) -> R): R
inline fun <R, T1, T2> Scope.new(constructor: (T1, T2) -> R): R
inline fun <R, T1, T2, T3> Scope.new(constructor: (T1, T2, T3) -> R): R
inline fun <R, T1, T2, T3, T4> Scope.new(constructor: (T1, T2, T3, T4) -> R): R
inline fun <R, T1, T2, T3, T4, T5> Scope.new(constructor: (T1, T2, T3, T4, T5) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6> Scope.new(constructor: (T1, T2, T3, T4, T5, T6) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8) -> R): R
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9> Scope.new(constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9) -> R): R
Link copied to clipboard

Register a callback to be invoked when this definition is closed/released. Used within withOptions { } block.

Link copied to clipboard

Conditionally apply options to a definition if the options parameter is not null.

Link copied to clipboard
inline fun <T> BeanDefinition<out T>.override()

Mark this definition as allowing override, even when global allowOverride is false. Used within withOptions { } block.

Link copied to clipboard
inline fun <R> ScopeDSL.scopedOf(crossinline constructor: () -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>

Declare a ScopeDSL.scoped definition by resolving a constructor reference for the dependency. The resolution is done at compile time by leveraging inline functions, no reflection is required.

inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1> ScopeDSL.scopedOf(crossinline constructor: (T1) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2> ScopeDSL.scopedOf(crossinline constructor: (T1, T2) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9> ScopeDSL.scopedOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
Link copied to clipboard
inline fun <R> Module.singleOf(crossinline constructor: () -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>

Declare a Module.single definition by resolving a constructor reference for the dependency. The resolution is done at compile time by leveraging inline functions, no reflection is required.

inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1> Module.singleOf(crossinline constructor: (T1) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2> Module.singleOf(crossinline constructor: (T1, T2) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3> Module.singleOf(crossinline constructor: (T1, T2, T3) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4> Module.singleOf(crossinline constructor: (T1, T2, T3, T4) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
inline fun <R, T1, T2, T3, T4, T5, T6, T7, T8, T9> Module.singleOf(crossinline constructor: (T1, T2, T3, T4, T5, T6, T7, T8, T9) -> R, noinline options: DefinitionOptions<R>? = null): KoinDefinition<R>
Link copied to clipboard
infix inline fun <T> KoinDefinition<T>.withOptions(options: DefinitionOptions<T>): KoinDefinition<T>

Apply additional options to a definition using a DSL block.