orbit-util / orbit.util.di / ComponentContainer

ComponentContainer

class ComponentContainer

Types

BeanDefinition

data class BeanDefinition<T>

Constructors

<init>

ComponentContainer()

Functions

configure

fun configure(config: ComponentContainerRoot.() -> Unit): Unit

construct

fun <T> construct(beanDefinition: BeanDefinition<T>): T
fun <T> construct(concreteClass: Class<out T>): T
fun <T> construct(): T

debugString

fun debugString(): String

findInstances

fun <T> findInstances(interfaceClass: Class<T>): Collection<T>
fun <T> findInstances(): Collection<T>

inject

fun <R : Any> inject(): Lazy<R>

registerDefinition

fun <T : Any> registerDefinition(concreteClass: Class<T>): Unit
fun <T : Any> registerDefinition(interfaceClass: Class<T>, concreteClass: Class<out T>): Unit

registerInstance

fun <T : Any> registerInstance(liveObject: T): Unit
fun <T : Any> registerInstance(interfaceClass: Class<T>, liveObject: T): Unit

resolve

fun <T> resolve(interfaceClass: Class<T>): T