package net.pterodactylus.sone.test import com.google.inject.Module import javax.inject.Provider import kotlin.reflect.KClass fun KClass.isInstance(instance: T) = Module { it.bind(this.java).toInstance(instance) } fun KClass.isProvidedBy(instance: T) = Module { it.bind(this.java).toProvider { instance } } fun KClass.isProvidedBy(provider: com.google.inject.Provider) = Module { it.bind(this.java).toProvider(provider) } fun KClass.isProvidedBy(provider: KClass>) = Module { it.bind(this.java).toProvider(provider.java) }