settings_setting: Fix errors

ToString didn't have a constexpr if statement where needed.
Canonicalize missed an else, causing unreachable code error on MSVC.
This commit is contained in:
lat9nq 2023-06-11 00:41:14 -04:00
parent 04d4b6ab80
commit 4903f40efe

View file

@ -142,7 +142,7 @@ protected:
return value_.has_value() ? std::to_string(*value_) : "none"; return value_.has_value() ? std::to_string(*value_) : "none";
} else if constexpr (std::is_same<Type, bool>()) { } else if constexpr (std::is_same<Type, bool>()) {
return value_ ? "true" : "false"; return value_ ? "true" : "false";
} else if (std::is_same<Type, AudioEngine>()) { } else if constexpr (std::is_same<Type, AudioEngine>()) {
return CanonicalizeEnum(value_); return CanonicalizeEnum(value_);
} else { } else {
return std::to_string(static_cast<u64>(value_)); return std::to_string(static_cast<u64>(value_));
@ -222,9 +222,10 @@ public:
[[nodiscard]] std::string constexpr Canonicalize() const override { [[nodiscard]] std::string constexpr Canonicalize() const override {
if constexpr (std::is_enum<Type>::value) { if constexpr (std::is_enum<Type>::value) {
return CanonicalizeEnum(this->GetValue()); return CanonicalizeEnum(this->GetValue());
} } else {
return ToString(this->GetValue()); return ToString(this->GetValue());
} }
}
/** /**
* Returns the save preference of the setting i.e. when saving or reading the setting from a * Returns the save preference of the setting i.e. when saving or reading the setting from a