Koin

class Koin

Koin

Gather main features to use on Koin context

Author

Arnaud Giuliani

Constructors

Link copied to clipboard
constructor()

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
fun close()

Close all resources from context

Link copied to clipboard

Create Single instances Definitions marked as createdAtStart

Link copied to clipboard
inline fun <T : Any> createScope(scopeId: ScopeID = KoinPlatformTools.generateId()): Scope
inline fun <T : Any> createScope(scopeId: ScopeID, source: Any? = null, scopeArchetype: TypeQualifier? = null): Scope
fun createScope(scopeId: ScopeID, qualifier: Qualifier, source: Any? = null, scopeArchetype: TypeQualifier? = null): Scope

Create a Scope instance

Link copied to clipboard
inline fun <T> declare(instance: T, qualifier: Qualifier? = null, secondaryTypes: List<KClass<*>> = emptyList(), allowOverride: Boolean = true)

Declare a component definition from the given instance This result of declaring a single definition of type T, returning the given instance

Link copied to clipboard

Delete a property

Link copied to clipboard
fun deleteScope(scopeId: ScopeID)

Delete a scope instance

Link copied to clipboard
inline fun <T : Any> get(qualifier: Qualifier? = null, noinline parameters: ParametersDefinition? = null): T
fun <T> get(clazz: KClass<*>, qualifier: Qualifier? = null, parameters: ParametersDefinition? = null): T

Get a Koin instance

Link copied to clipboard
inline fun <T> getAll(): List<T>

Get a all instance for given inferred class (in primary or secondary type)

Link copied to clipboard
inline fun <T : Any> getOrCreateScope(scopeId: ScopeID): Scope
fun getOrCreateScope(scopeId: ScopeID, qualifier: Qualifier, source: Any? = null): Scope

Get or Create a Scope instance

Link copied to clipboard
inline fun <T : Any> getOrNull(qualifier: Qualifier? = null, noinline parameters: ParametersDefinition? = null): T?
fun <T> getOrNull(clazz: KClass<*>, qualifier: Qualifier? = null, parameters: ParametersDefinition? = null): T?

Get a Koin instance if available

Link copied to clipboard
fun <T : Any> getProperty(key: String): T?
fun <T : Any> getProperty(key: String, defaultValue: T): T

Retrieve a property

Link copied to clipboard
fun getScope(scopeId: ScopeID): Scope

get a scope instance

Link copied to clipboard
fun getScopeOrNull(scopeId: ScopeID): Scope?

get a scope instance

Link copied to clipboard
inline fun <T : Any> inject(qualifier: Qualifier? = null, mode: LazyThreadSafetyMode = KoinPlatformTools.defaultLazyMode(), noinline parameters: ParametersDefinition? = null): Lazy<T>

Lazy inject a Koin instance

Link copied to clipboard
inline fun <T : Any> injectOrNull(qualifier: Qualifier? = null, mode: LazyThreadSafetyMode = KoinPlatformTools.defaultLazyMode(), noinline parameters: ParametersDefinition? = null): Lazy<T?>

Lazy inject a Koin instance if available

Link copied to clipboard
fun loadModules(modules: List<Module>, allowOverride: Boolean = true, createEagerInstances: Boolean = false)

Load module & create eager instances

Link copied to clipboard
fun setProperty(key: String, value: Any)

Save a property

Link copied to clipboard
fun setupLogger(logger: Logger)
Link copied to clipboard
fun unloadModules(modules: List<Module>)