class BeanDefinition<T>
Koin bean definition main structure to make definition in Koin
Author
Arnaud Giuliani
BeanDefinition(qualifier: Qualifier? = null, scopeName: Qualifier? = null, primaryType: KClass<*>)
Koin bean definition main structure to make definition in Koin |
lateinit var definition: Definition<T> |
|
var instance: DefinitionInstance<T>? |
|
lateinit var kind: Kind |
|
var onClose: OnCloseCallback<T>? |
|
var onRelease: OnReleaseCallback<T>? |
|
var options: Options |
|
val primaryType: KClass<*> |
|
var properties: Properties |
|
val qualifier: Qualifier? |
|
val scopeName: Qualifier? |
|
var secondaryTypes: ArrayList<KClass<*>> |
fun close(): Unit |
|
fun createInstanceHolder(): Unit
Create the associated Instance Holder |
|
fun equals(other: Any?): Boolean |
|
fun hasScopeSet(): Boolean |
|
fun hashCode(): Int |
|
fun <T> resolveInstance(context: InstanceContext): T
Resolve instance |
|
fun toString(): String |
infix fun <T> BeanDefinition<T>.bind(clazz: KClass<*>): BeanDefinition<T>
Add a compatible type to match for definition |
|
infix fun BeanDefinition<*>.binds(classes: Array<KClass<*>>): BeanDefinition<*>
Add compatible types to match for definition |
|
infix fun <T> BeanDefinition<T>.onClose(onClose: OnCloseCallback<T>): BeanDefinition<T>
Callback when closing instance from registry (called just before final close) |
|
infix fun <T> BeanDefinition<T>.onRelease(onRelease: OnReleaseCallback<T>): BeanDefinition<T>
Callback when releasing instance |