@@ -109,7 +109,7 @@ void OS::setFamily(Family family) { m_family = family; }
109109
110110void OS::setFamily (std::string_view family)
111111{
112- if (const auto & rv = magic_enum::enum_cast <Family>(family))
112+ if (const auto & rv = cloyster::utils::enumOfStringOpt <Family>(family))
113113 setFamily (rv.value ());
114114 else
115115 throw std::runtime_error (fmt::format (" Unsupported OS: {}" , family));
@@ -128,8 +128,8 @@ void OS::setPlatform(std::string_view platform)
128128 std::transform (lowercasePlatform.begin (), lowercasePlatform.end (),
129129 lowercasePlatform.begin (), ::tolower);
130130
131- for (const auto & enumValue : magic_enum::enum_values <Platform>()) {
132- if (lowercasePlatform == magic_enum::enum_name ( enumValue) ) {
131+ for (const auto & enumValue : cloyster::utils::enumToStrings <Platform>()) {
132+ if (lowercasePlatform == enumValue) {
133133 setPlatform (enumValue);
134134 return ;
135135 }
@@ -265,15 +265,16 @@ std::string OS::getValueFromKey(const std::string& line)
265265std::shared_ptr<package_manager> OS::factoryPackageManager (
266266 OS::Platform platform)
267267{
268- for (const auto & supportedPlatform : magic_enum::enum_values<Platform>()) {
269- if (platform == supportedPlatform) {
268+ auto platformName = cloyster::utils::enumToString (platform);
269+ for (const auto & supportedPlatform : cloyster::utils::enumToStrings<Platform>()) {
270+ if (platformName == supportedPlatform) {
270271 m_packageManager = std::make_shared<dnf>();
271272 return m_packageManager;
272273 }
273274 }
274275
275276 throw std::runtime_error (fmt::format (
276- " Unsupported OS platform: {}" , magic_enum::enum_name (platform)));
277+ " Unsupported OS platform: {}" , cloyster::utils::enumToString (platform)));
277278}
278279
279280gsl::not_null<package_manager*> OS::packageManager () const
@@ -284,13 +285,13 @@ gsl::not_null<package_manager*> OS::packageManager() const
284285void OS::printData () const
285286{
286287#ifndef NDEBUG
287- LOG_DEBUG (" Architecture: {}" , magic_enum::enum_name (std::get<Arch>(m_arch)))
288- LOG_DEBUG (" Family: {}" , magic_enum::enum_name (std::get<Family>(m_family)))
288+ LOG_DEBUG (" Architecture: {}" , cloyster::utils::enumToString (std::get<Arch>(m_arch)))
289+ LOG_DEBUG (" Family: {}" , cloyster::utils::enumToString (std::get<Family>(m_family)))
289290 LOG_DEBUG (" Kernel Release: {}" , m_kernel)
290291 LOG_DEBUG (
291- " Platform: {}" , magic_enum::enum_name (std::get<Platform>(m_platform)))
292+ " Platform: {}" , cloyster::utils::enumToString (std::get<Platform>(m_platform)))
292293 LOG_DEBUG (
293- " Distribution: {}" , magic_enum::enum_name (std::get<Distro>(m_distro)))
294+ " Distribution: {}" , cloyster::utils::enumToString (std::get<Distro>(m_distro)))
294295 LOG_DEBUG (" Major Version: {}" , m_majorVersion)
295296 LOG_DEBUG (" Minor Version: {}" , m_minorVersion)
296297#endif
0 commit comments