diff options
Diffstat (limited to 'src/bootstrap.cpp')
-rw-r--r-- | src/bootstrap.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/bootstrap.cpp b/src/bootstrap.cpp index 1436301..f22c689 100644 --- a/src/bootstrap.cpp +++ b/src/bootstrap.cpp @@ -31,6 +31,7 @@ #include "randomization/generator.hpp" #include "randomization/seed_generator.hpp" +#include "DI/concepts.hpp" #include "util/function.hpp" #include <concepts> @@ -38,11 +39,8 @@ #include <random> #include <string_view> -template <typename Type> -concept abstract = std::is_abstract_v<Type>; - template <typename Interface, typename Impl, typename... Params> -requires abstract<Interface> && std::derived_from<Impl, Interface> && +requires Abstract<Interface> && std::derived_from<Impl, Interface> && std::constructible_from<Impl, Params...> auto construct_as_interface(Params &&...parameters) -> std::shared_ptr<Interface> { |