#pragma once #include "DI/container.hpp" #include template class IAutoWirable { public: static auto resolve() noexcept -> Interface; }; template class AutoWirable : public IAutoWirable { public: static auto resolve(const Container &container) noexcept -> std::shared_ptr; }; #include "auto_wirable.tpp"