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.dsl.binds import kotlin.reflect.KClass import kotlin.reflect.full.allSuperclasses inline fun Module.factoryWithRandomQualifierAndBinds( bindFilter: (KClass<*>) -> Boolean = { true }, noinline definition: Definition ): Pair> { return factoryWithBinds(uuid4().toString(), bindFilter, definition) }