1
0
Fork 0
mirror of https://github.com/Neargye/magic_enum.git synced 2026-01-09 23:34:23 +00:00

add check in enum_flags_name

This commit is contained in:
neargye 2023-06-19 01:25:00 +04:00
parent fd9f70b91d
commit eb0f051078

View file

@ -57,12 +57,15 @@ template <typename E>
auto check_value = U{0};
for (std::size_t i = 0; i < detail::count_v<D, S>; ++i) {
if (const auto v = static_cast<U>(enum_value<D, S>(i)); (static_cast<U>(value) & v) != 0) {
check_value |= v;
const auto n = detail::names_v<D, S>[i];
if (!name.empty()) {
name.append(1, sep);
if (const auto n = detail::names_v<D, S>[i]; !n.empty()) {
check_value |= v;
if (!name.empty()) {
name.append(1, sep);
}
name.append(n.data(), n.size());
} else {
return {}; // Value out of range.
}
name.append(n.data(), n.size());
}
}