Kapsule API
sealed class Delegate<in M, T>
Kapsule property delegate. |
|
interface HasModules
Module with other submodules attached via delegation. |
|
interface Injects<M>
Injection interface. |
|
class Kapsule<M>
Kapsule injector. |
|
object Kapsules
Static storage of Kapsule instances. |
class TransitiveInjectionException : ClassCastException
Class cast exception indicating that a submodule depends on a module that is not a descendant of the root module. |
fun <M> Injects<M>.inject(module: M): Unit
Fetches Kapsule instance and calls Kapsule.inject. |
|
fun <M, T> Injects<M>.optional(initializer: M.() -> T?): Optional<M, T>
Fetches Kapsule instance and calls Kapsule.optional. |
|
fun <M, T> Injects<M>.required(initializer: M.() -> T): Required<M, T>
Fetches Kapsule instance and calls Kapsule.required. |
|
fun <M : HasModules> M.transitive(): M
Injects root module into any submodules with transitive dependencies. |