put
Add a definition of type T with the given supplier.
T is internally turned to a KClass.
Parameters
The lambda that will be executed to create an object.
The type of the component to add.
Add a definition of type T with the given qualifier and supplier.
T is internally turned to a KClass. Qualifiers allow for differentiating between components that have the same type. See Identifier for more information.
Parameters
The lambda that will be executed to create an object.
The qualifier for the underlying identifier.
The type of the component to add.
Add a definition of type T with the given constructor.
T is internally turned to a KClass.
Parameters
The constructor for creating an object. This can be passed as a reference, e.g. ::MyClass
.
The type of the component to add.
Add a definition of type T with the given qualifier and constructor.
T is internally turned to a KClass. Qualifiers allow for differentiating between components that have the same type. See Identifier for more information.
Parameters
The constructor for creating an object. This can be passed as a reference, e.g. ::MyClass
.
The qualifier for the type.
The type of the component to add.
Add a definition of type T with the given class and constructor.
Parameters
The class of the type T. This is useful for scenarios where it is not known at compile time. If the type is already known at compile time, you can remove the kclass
parameter.
The constructor for creating an object. This can be passed as a reference, e.g. ::MyClass
.
The type of the component to add.
Add a definition of type T with the given class, qualifier and constructor.
Qualifiers allow for differentiating between components that have the same type. See Identifier for more information.
Parameters
The class of the type T. This is useful for scenarios where it is not known at compile time. If the type is already known at compile time, you can remove the kclass
parameter.
The qualifier for the type.
The constructor for creating an object. This can be passed as a reference, e.g. ::MyClass
.
The type of the component to add.
Add a module to the current definition. This adds all the declarations within the module to this context.
Parameters
The module that should be added.