Package-level declarations
Types
A Map containing all bindings associated to their keys
Defines which bindings are to be copied from a parent DI to a child DI.
The Container is the entry point for retrieval without DI's inline & reified shenanigans.
A property delegate provider for DI retrieval. Provides a Lazy
value that, when accessed, retrieve the value from DI.
D stands for Direct. Direct DI!
Any class that extends this interface can use direct DI "seamlessly".
DI object that defers all method to a base DI object that can be set later.
DSL that facilitates the creation of a SearchSpecs object.
Defines the specs to search bindings from (in)complete data with CopySpecs or DITree.find.
Soft Reference Maker.
Thread Local Reference Maker.
Weak Reference Maker.
Functions
Defines that the binding will be saved in a set binding.
Gets all factories that match the the given argument type, return type and tag.
Gets all factories that can return a T
for the given argument type, return type and tag.
Gets all instances from providers that match the the given return type and tag.
Gets all instances that can return a T
for the given type and tag.
Gets all instances from providers that match the the given return type and tag, curried from factories that take an argument A.
Gets all instances that can return a T
for the given type and tag, curried from factories for the given argument.
Gets all providers that match the the given return type and tag.
Gets all providers that can return a T
for the given type and tag.
Gets all providers that match the the given return type and tag, curried from factories that take an argument A.
Gets all providers that can return a T
for the given type and tag, curried from factories for the given argument.
Starts the binding of a given type with a given tag.
Attaches a binding to the DI container
Creates a set: multiple bindings can be added in this set.
Creates a set and add multiple bindings to it.
Binds a constant provider: will always return the given instance.
Binds an eager singleton: will create an instance as soon as kodein is ready (all bindings are set) and will always return this instance.
Binds an instance provider: will always return the given instance.
Creates a factory: each time an instance is needed, the function creator function will be called.
Creates a factory: each time an instance is needed, the function constructor function will be called.
Creates a set: multiple bindings can be added in this set.
Creates a set and add multiple bindings to it.
Binds a singleton: will create an instance on first request and will subsequently always return the same instance.
Binds a singleton: will create an instance on first request and will subsequently always return the same instance.
Used to define bindings with a context: bind<MyType>() with contexted<MyContext>().provider { /*...*/ }
Delegate the targeted type to a new binding type
The description of all bindings in this map, using type simple display names.
Creates an eager singleton: will create an instance as soon as kodein is ready (all bindings are set) and will always return this instance.
Creates a CompositeTypeToken that defines a List<T>
.
Gets a factory of T
for the given argument type and return type. The name of the receiving property is used as tag.
Creates a factory: each time an instance is needed, the function creator function will be called.
Gets a factory of T
for the given argument type, return type and tag.
Gets a factory of T
for the given argument type and return type, or nul if none is found. The name of the receiving property is used as tag.
Gets a factory of T
for the given argument type, return type and tag, or nul if none is found.
Used to find bindings that match a particular SearchSpecs.
The description of all bindings in this map, using type full display names.
Add multiple bindings in an existing set
Gets an instance of T
for the given type. The name of the receiving property is used as tag.
Creates an instance provider: will always return the given instance.
Gets an instance of T
for the given type and tag.
Gets an instance of T for the given type, curried from a factory that takes an argument A. The name of the receiving property is used as tag.
Gets an instance of T
for the given type and tag, curried from a factory for the given argument.
Gets an instance of T
for the given type, or null if none is found. The name of the receiving property is used as tag.
Gets an instance of T
for the given type and tag, or null if none is found.
Gets an instance of T for the given type, curried from a factory that takes an argument A, or null if none is found. The name of the receiving property is used as tag.
Gets an instance of T for the given type and tag, curried from a factory that takes an argument A, or null if none is found.
Gets an instance of T
for the given type and tag, curried from a factory for the given argument, or null if none is found.
Creates a multiton: will create an instance on first request for each different argument and will subsequently always return the same instance for the same argument.
Auto resolve a class dependencies by using its constructor reference. The resolution is done at compile time by leveraging inline functions, no reflection is required.
Allows to create a new instance of an unbound object with the same API as when bounding one.
Allows the creation of a new instance with DI injection.
Gets a provider of T
for the given type. The name of the receiving property is used as tag.
Creates a factory: each time an instance is needed, the function creator function will be called.
Gets a provider of T
for the given type and tag.
Gets a provider of T for the given type, curried from a factory that takes an argument A. The name of the receiving property is used as tag.
Gets a provider of T
for the given type and tag, curried from a factory for the given argument.
Gets a provider of T
for the given type, or null if none is found. The name of the receiving property is used as tag.
Gets a provider of T
for the given type and tag, or null if none is found.
Gets a provider of T for the given type, curried from a factory that takes an argument A, or null if none is found. The name of the receiving property is used as tag.
Gets a provider of T for the given type and tag, curried from a factory that takes an argument A, or null if none is found.
Gets a provider of T
for the given type and tag, curried from a factory for the given argument, or null if none is found.
Used to define bindings with a scope: bind<MyType>() with scoped(myScope).singleton { /*...*/ }
Binds the previously given tag to the given instance.