Primary dependency injection container managing configurations and resolution.
More...
template<typename... Configs>
class capy::di::DI< Configs >
Primary dependency injection container managing configurations and resolution.
- Template Parameters
-
The DI container stores two internal dispatchers that handle different aspects:
- CreationalDispatcher: Manages creation and lifetime of dependencies
- ChainableDispatcher: Applies decorators and transformations to created objects
All resolution happens with compile-time type safety via concepts and template specialization. The container filters the input configs into two groups and rebinds them to their respective dispatchers, creating a type-safe, zero-overhead abstraction.
- Note
- The container is
constexpr-compatible, enabling compile-time DI setup where possible.