| 4005 | */ |
| 4006 | template <typename Enum> |
| 4007 | constexpr auto underlying(Enum e) noexcept -> underlying_t<Enum> { |
| 4008 | return static_cast<underlying_t<Enum>>(e); |
| 4009 | } |
| 4010 | |
| 4011 | namespace enums { |
| 4012 | template <typename Enum, FMT_ENABLE_IF(std::is_enum<Enum>::value)> |