MicroUtils/koin/src/commonMain/kotlin/FactoryWithRandomQualifier.kt

16 lines
541 B
Kotlin
Raw Normal View History

2022-09-14 16:14:20 +00:00
package dev.inmo.micro_utils.koin
import com.benasher44.uuid.uuid4
import org.koin.core.definition.Definition
import org.koin.core.instance.InstanceFactory
import org.koin.core.module.Module
import org.koin.core.qualifier.StringQualifier
/**
* Will be useful in case you need to declare some singles with one type several types, but need to separate them and do
* not care about how :)
*/
inline fun <reified T : Any> Module.factoryWithRandomQualifier(
noinline definition: Definition<T>
) = factory(uuid4().toString(), definition)