Package-level declarations

Types

Link copied to clipboard
class BeanDefinition<T>(val scopeQualifier: Qualifier, val primaryType: KClass<*>, var qualifier: Qualifier? = null, val definition: Definition<T>, val kind: Kind, var secondaryTypes: List<KClass<*>> = emptyList(), var allowOverride: Boolean? = null)

Koin bean definition main structure to make definition in Koin

Link copied to clipboard
data class Callbacks<T>(val onClose: OnCloseCallback<T>? = null)

Definition callbacks - Functions to call on definition lifecycle

Link copied to clipboard
typealias Definition<T> = Scope.(ParametersHolder) -> T
Link copied to clipboard
typealias IndexKey = String
Link copied to clipboard
enum Kind : Enum<Kind>
Link copied to clipboard
data class KoinDefinition<R>(val module: Module, val factory: InstanceFactory<R>)
Link copied to clipboard
typealias OnCloseCallback<T> = (T?) -> Unit

Functions

Link copied to clipboard
inline fun <T> _createDeclaredDefinition(kind: Kind = Kind.Singleton, qualifier: Qualifier? = null, secondaryTypes: List<KClass<*>> = emptyList(), scopeQualifier: Qualifier): BeanDefinition<T>
Link copied to clipboard
inline fun <T> _createDefinition(kind: Kind = Kind.Singleton, qualifier: Qualifier? = null, noinline definition: Definition<T>, secondaryTypes: List<KClass<*>> = emptyList(), scopeQualifier: Qualifier): BeanDefinition<T>
Link copied to clipboard
inline fun indexKey(clazz: KClass<*>, typeQualifier: Qualifier?, scopeQualifier: Qualifier): String