From f57227a148f19723fe3c7b601c25f1d9f48ee079 Mon Sep 17 00:00:00 2001 From: Victor Zverovich <victor.zverovich@gmail.com> Date: Fri, 31 May 2019 20:09:19 -0700 Subject: [PATCH] FMT_ENABLE_IF -> enable_if_t --- include/fmt/core.h | 10 +++++----- include/fmt/format-inl.h | 4 ++-- include/fmt/format.h | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/fmt/core.h b/include/fmt/core.h index 8df1f8aa651e..a733e4ef01ab 100644 --- a/include/fmt/core.h +++ b/include/fmt/core.h @@ -187,11 +187,6 @@ # define FMT_ASSERT(condition, message) assert((condition) && message) #endif -// An enable_if helper to be used in template parameters. enable_if in template -// parameters results in much shorter symbols: https://godbolt.org/z/sWw4vP. -#define FMT_ENABLE_IF_T(...) typename std::enable_if<(__VA_ARGS__), int>::type -#define FMT_ENABLE_IF(...) FMT_ENABLE_IF_T(__VA_ARGS__) = 0 - // libc++ supports string_view in pre-c++17. #if (FMT_HAS_INCLUDE(<string_view>) && \ (__cplusplus > 201402L || defined(_LIBCPP_VERSION))) || \ @@ -215,6 +210,11 @@ using std_string_view = std::experimental::basic_string_view<Char>; template <typename T> struct std_string_view {}; #endif +// An enable_if helper to be used in template parameters. enable_if in template +// parameters results in much shorter symbols: https://godbolt.org/z/sWw4vP. +template <bool B> using enable_if_t = typename std::enable_if<B, int>::type; +#define FMT_ENABLE_IF(...) internal::enable_if_t<__VA_ARGS__> = 0 + #if (__cplusplus >= 201703L || \ (defined(_MSVC_LANG) && _MSVC_LANG >= 201703L)) && \ __cpp_lib_is_invocable >= 201703L diff --git a/include/fmt/format-inl.h b/include/fmt/format-inl.h index 6c6f5223a8d6..8f9d58f7b40e 100644 --- a/include/fmt/format-inl.h +++ b/include/fmt/format-inl.h @@ -223,7 +223,7 @@ template <typename Locale> Locale locale_ref::get() const { } template <typename Char> FMT_FUNC Char thousands_sep_impl(locale_ref loc) { - return std::use_facet<std::numpunct<Char> >(loc.get<std::locale>()) + return std::use_facet<std::numpunct<Char>>(loc.get<std::locale>()) .thousands_sep(); } } // namespace internal @@ -683,7 +683,7 @@ template <int GRISU_VERSION> struct grisu_shortest_handler { } }; -template <typename Double, FMT_ENABLE_IF_T(sizeof(Double) == sizeof(uint64_t))> +template <typename Double, enable_if_t<sizeof(Double) == sizeof(uint64_t)>> FMT_API bool grisu_format(Double value, buffer<char>& buf, int precision, unsigned options, int& exp) { FMT_ASSERT(value >= 0, "value is negative"); diff --git a/include/fmt/format.h b/include/fmt/format.h index 5fb25eb3c196..72be49bc2072 100644 --- a/include/fmt/format.h +++ b/include/fmt/format.h @@ -2238,7 +2238,7 @@ FMT_CONSTEXPR bool do_check_format_string(basic_string_view<Char> s, } template <typename... Args, typename S, - FMT_ENABLE_IF_T(is_compile_string<S>::value)> + internal::enable_if_t<is_compile_string<S>::value>> void check_format_string(S format_str) { typedef typename S::char_type char_t; FMT_CONSTEXPR_DECL bool invalid_format =