From 9bfb90760a7f9928e0678863ed64893ea89e1d02 Mon Sep 17 00:00:00 2001 From: neargye Date: Fri, 11 Feb 2022 18:54:59 +0200 Subject: [PATCH] clean-up --- include/magic_enum.hpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/magic_enum.hpp b/include/magic_enum.hpp index 932c39f..f23891f 100644 --- a/include/magic_enum.hpp +++ b/include/magic_enum.hpp @@ -909,10 +909,10 @@ template namespace fusion_detail { -template +template constexpr std::size_t fuse_one_enum(std::size_t hash, E value) noexcept { // Add 1 to prevent matching 2D fusions with 3D fusions etc. - std::size_t index = enum_index(value).has_value() ? enum_index(value).value() + 1 : 0; + std::size_t index = enum_index(value).has_value() ? (enum_index(value).value() + 1) : 0; return (hash << detail::log2(enum_count() + 1)) | index; } @@ -921,8 +921,8 @@ constexpr std::size_t fuse_enum(E value) noexcept { return fuse_one_enum(0, value); } -template -constexpr std::size_t fuse_enum(E head, Es ... tail) noexcept { +template +constexpr std::size_t fuse_enum(E head, Es... tail) noexcept { return fuse_one_enum(fuse_enum(tail...), head); } @@ -932,7 +932,7 @@ constexpr std::size_t fuse_enum(E head, Es ... tail) noexcept { template [[nodiscard]] constexpr auto enum_fuse(Es... values) -> std::enable_if_t<(std::is_enum_v> && ...), std::size_t>{ static_assert(sizeof...(Es) >= 2, "magic_enum::enum_fuse requires at least 2 enums"); - static_assert((detail::log2(enum_count() + 1) + ...) <= sizeof(std::size_t) * 8, "magic_enum::enum_fuse does not work for long enums"); + static_assert((detail::log2(enum_count() + 1) + ...) <= (sizeof(std::size_t) * 8), "magic_enum::enum_fuse does not work for large enums"); const bool has_values = (enum_index(values).has_value() && ...); #if defined(__cpp_lib_is_constant_evaluated) && (defined(__cpp_exceptions) || defined(__EXCEPTIONS) || (defined(_HAS_EXCEPTIONS) && _HAS_EXCEPTIONS)) if (std::is_constant_evaluated() && !has_values) {