Bump fmt to version 8.1.1 and run clang-format
This commit is contained in:
parent
d8199b607d
commit
c432fdd987
@ -258,7 +258,8 @@ void multi_sink_example()
|
|||||||
struct my_type
|
struct my_type
|
||||||
{
|
{
|
||||||
int i = 0;
|
int i = 0;
|
||||||
explicit my_type(int i): i(i){};
|
explicit my_type(int i)
|
||||||
|
: i(i){};
|
||||||
};
|
};
|
||||||
|
|
||||||
namespace fmt_lib = spdlog::fmt_lib;
|
namespace fmt_lib = spdlog::fmt_lib;
|
||||||
|
@ -73,7 +73,8 @@ inline std::shared_ptr<spdlog::logger> create_async_nb(std::string logger_name,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// set global thread pool.
|
// set global thread pool.
|
||||||
inline void init_thread_pool(size_t q_size, size_t thread_count, std::function<void()> on_thread_start, std::function<void()> on_thread_stop)
|
inline void init_thread_pool(
|
||||||
|
size_t q_size, size_t thread_count, std::function<void()> on_thread_start, std::function<void()> on_thread_stop)
|
||||||
{
|
{
|
||||||
auto tp = std::make_shared<details::thread_pool>(q_size, thread_count, on_thread_start, on_thread_stop);
|
auto tp = std::make_shared<details::thread_pool>(q_size, thread_count, on_thread_start, on_thread_stop);
|
||||||
details::registry::instance().set_tp(std::move(tp));
|
details::registry::instance().set_tp(std::move(tp));
|
||||||
@ -86,7 +87,8 @@ inline void init_thread_pool(size_t q_size, size_t thread_count, std::function<v
|
|||||||
|
|
||||||
inline void init_thread_pool(size_t q_size, size_t thread_count)
|
inline void init_thread_pool(size_t q_size, size_t thread_count)
|
||||||
{
|
{
|
||||||
init_thread_pool(q_size, thread_count, [] {}, [] {});
|
init_thread_pool(
|
||||||
|
q_size, thread_count, [] {}, [] {});
|
||||||
}
|
}
|
||||||
|
|
||||||
// get the global thread pool.
|
// get the global thread pool.
|
||||||
|
@ -13,7 +13,8 @@
|
|||||||
namespace spdlog {
|
namespace spdlog {
|
||||||
namespace details {
|
namespace details {
|
||||||
|
|
||||||
SPDLOG_INLINE thread_pool::thread_pool(size_t q_max_items, size_t threads_n, std::function<void()> on_thread_start, std::function<void()> on_thread_stop)
|
SPDLOG_INLINE thread_pool::thread_pool(
|
||||||
|
size_t q_max_items, size_t threads_n, std::function<void()> on_thread_start, std::function<void()> on_thread_stop)
|
||||||
: q_(q_max_items)
|
: q_(q_max_items)
|
||||||
{
|
{
|
||||||
if (threads_n == 0 || threads_n > 1000)
|
if (threads_n == 0 || threads_n > 1000)
|
||||||
@ -36,7 +37,8 @@ SPDLOG_INLINE thread_pool::thread_pool(size_t q_max_items, size_t threads_n, std
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
SPDLOG_INLINE thread_pool::thread_pool(size_t q_max_items, size_t threads_n)
|
SPDLOG_INLINE thread_pool::thread_pool(size_t q_max_items, size_t threads_n)
|
||||||
: thread_pool(q_max_items, threads_n, [] {}, [] {})
|
: thread_pool(
|
||||||
|
q_max_items, threads_n, [] {}, [] {})
|
||||||
{}
|
{}
|
||||||
|
|
||||||
// message all threads to terminate gracefully join them
|
// message all threads to terminate gracefully join them
|
||||||
|
@ -79,7 +79,8 @@ inline details::dump_info<typename Container::const_iterator> to_hex(const Conta
|
|||||||
#if __cpp_lib_span >= 202002L
|
#if __cpp_lib_span >= 202002L
|
||||||
|
|
||||||
template<typename Value, size_t Extent>
|
template<typename Value, size_t Extent>
|
||||||
inline details::dump_info<typename std::span<Value, Extent>::iterator> to_hex(const std::span<Value, Extent> &container, size_t size_per_line = 32)
|
inline details::dump_info<typename std::span<Value, Extent>::iterator> to_hex(
|
||||||
|
const std::span<Value, Extent> &container, size_t size_per_line = 32)
|
||||||
{
|
{
|
||||||
using Container = std::span<Value, Extent>;
|
using Container = std::span<Value, Extent>;
|
||||||
static_assert(sizeof(typename Container::value_type) == 1, "sizeof(Container::value_type) != 1");
|
static_assert(sizeof(typename Container::value_type) == 1, "sizeof(Container::value_type) != 1");
|
||||||
|
101
src/fmt.cpp
101
src/fmt.cpp
@ -13,33 +13,24 @@ FMT_BEGIN_NAMESPACE
|
|||||||
namespace detail {
|
namespace detail {
|
||||||
|
|
||||||
// DEPRECATED!
|
// DEPRECATED!
|
||||||
template <typename T = void> struct basic_data {
|
template<typename T = void>
|
||||||
FMT_API static constexpr const char digits[100][2] = {
|
struct basic_data
|
||||||
{'0', '0'}, {'0', '1'}, {'0', '2'}, {'0', '3'}, {'0', '4'}, {'0', '5'},
|
{
|
||||||
{'0', '6'}, {'0', '7'}, {'0', '8'}, {'0', '9'}, {'1', '0'}, {'1', '1'},
|
FMT_API static constexpr const char digits[100][2] = {{'0', '0'}, {'0', '1'}, {'0', '2'}, {'0', '3'}, {'0', '4'}, {'0', '5'},
|
||||||
{'1', '2'}, {'1', '3'}, {'1', '4'}, {'1', '5'}, {'1', '6'}, {'1', '7'},
|
{'0', '6'}, {'0', '7'}, {'0', '8'}, {'0', '9'}, {'1', '0'}, {'1', '1'}, {'1', '2'}, {'1', '3'}, {'1', '4'}, {'1', '5'}, {'1', '6'},
|
||||||
{'1', '8'}, {'1', '9'}, {'2', '0'}, {'2', '1'}, {'2', '2'}, {'2', '3'},
|
{'1', '7'}, {'1', '8'}, {'1', '9'}, {'2', '0'}, {'2', '1'}, {'2', '2'}, {'2', '3'}, {'2', '4'}, {'2', '5'}, {'2', '6'}, {'2', '7'},
|
||||||
{'2', '4'}, {'2', '5'}, {'2', '6'}, {'2', '7'}, {'2', '8'}, {'2', '9'},
|
{'2', '8'}, {'2', '9'}, {'3', '0'}, {'3', '1'}, {'3', '2'}, {'3', '3'}, {'3', '4'}, {'3', '5'}, {'3', '6'}, {'3', '7'}, {'3', '8'},
|
||||||
{'3', '0'}, {'3', '1'}, {'3', '2'}, {'3', '3'}, {'3', '4'}, {'3', '5'},
|
{'3', '9'}, {'4', '0'}, {'4', '1'}, {'4', '2'}, {'4', '3'}, {'4', '4'}, {'4', '5'}, {'4', '6'}, {'4', '7'}, {'4', '8'}, {'4', '9'},
|
||||||
{'3', '6'}, {'3', '7'}, {'3', '8'}, {'3', '9'}, {'4', '0'}, {'4', '1'},
|
{'5', '0'}, {'5', '1'}, {'5', '2'}, {'5', '3'}, {'5', '4'}, {'5', '5'}, {'5', '6'}, {'5', '7'}, {'5', '8'}, {'5', '9'}, {'6', '0'},
|
||||||
{'4', '2'}, {'4', '3'}, {'4', '4'}, {'4', '5'}, {'4', '6'}, {'4', '7'},
|
{'6', '1'}, {'6', '2'}, {'6', '3'}, {'6', '4'}, {'6', '5'}, {'6', '6'}, {'6', '7'}, {'6', '8'}, {'6', '9'}, {'7', '0'}, {'7', '1'},
|
||||||
{'4', '8'}, {'4', '9'}, {'5', '0'}, {'5', '1'}, {'5', '2'}, {'5', '3'},
|
{'7', '2'}, {'7', '3'}, {'7', '4'}, {'7', '5'}, {'7', '6'}, {'7', '7'}, {'7', '8'}, {'7', '9'}, {'8', '0'}, {'8', '1'}, {'8', '2'},
|
||||||
{'5', '4'}, {'5', '5'}, {'5', '6'}, {'5', '7'}, {'5', '8'}, {'5', '9'},
|
{'8', '3'}, {'8', '4'}, {'8', '5'}, {'8', '6'}, {'8', '7'}, {'8', '8'}, {'8', '9'}, {'9', '0'}, {'9', '1'}, {'9', '2'}, {'9', '3'},
|
||||||
{'6', '0'}, {'6', '1'}, {'6', '2'}, {'6', '3'}, {'6', '4'}, {'6', '5'},
|
{'9', '4'}, {'9', '5'}, {'9', '6'}, {'9', '7'}, {'9', '8'}, {'9', '9'}};
|
||||||
{'6', '6'}, {'6', '7'}, {'6', '8'}, {'6', '9'}, {'7', '0'}, {'7', '1'},
|
|
||||||
{'7', '2'}, {'7', '3'}, {'7', '4'}, {'7', '5'}, {'7', '6'}, {'7', '7'},
|
|
||||||
{'7', '8'}, {'7', '9'}, {'8', '0'}, {'8', '1'}, {'8', '2'}, {'8', '3'},
|
|
||||||
{'8', '4'}, {'8', '5'}, {'8', '6'}, {'8', '7'}, {'8', '8'}, {'8', '9'},
|
|
||||||
{'9', '0'}, {'9', '1'}, {'9', '2'}, {'9', '3'}, {'9', '4'}, {'9', '5'},
|
|
||||||
{'9', '6'}, {'9', '7'}, {'9', '8'}, {'9', '9'}};
|
|
||||||
FMT_API static constexpr const char hex_digits[] = "0123456789abcdef";
|
FMT_API static constexpr const char hex_digits[] = "0123456789abcdef";
|
||||||
FMT_API static constexpr const char signs[4] = {0, '-', '+', ' '};
|
FMT_API static constexpr const char signs[4] = {0, '-', '+', ' '};
|
||||||
FMT_API static constexpr const char left_padding_shifts[5] = {31, 31, 0, 1,
|
FMT_API static constexpr const char left_padding_shifts[5] = {31, 31, 0, 1, 0};
|
||||||
0};
|
FMT_API static constexpr const char right_padding_shifts[5] = {0, 31, 0, 1, 0};
|
||||||
FMT_API static constexpr const char right_padding_shifts[5] = {0, 31, 0, 1,
|
FMT_API static constexpr const unsigned prefixes[4] = {0, 0, 0x1000000u | '+', 0x1000000u | ' '};
|
||||||
0};
|
|
||||||
FMT_API static constexpr const unsigned prefixes[4] = {0, 0, 0x1000000u | '+',
|
|
||||||
0x1000000u | ' '};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# ifdef FMT_SHARED
|
# ifdef FMT_SHARED
|
||||||
@ -49,38 +40,38 @@ extern template struct basic_data<void>;
|
|||||||
|
|
||||||
# if __cplusplus < 201703L
|
# if __cplusplus < 201703L
|
||||||
// DEPRECATED! These are here only for ABI compatiblity.
|
// DEPRECATED! These are here only for ABI compatiblity.
|
||||||
template <typename T> constexpr const char basic_data<T>::digits[][2];
|
template<typename T>
|
||||||
template <typename T> constexpr const char basic_data<T>::hex_digits[];
|
constexpr const char basic_data<T>::digits[][2];
|
||||||
template <typename T> constexpr const char basic_data<T>::signs[];
|
template<typename T>
|
||||||
template <typename T> constexpr const char basic_data<T>::left_padding_shifts[];
|
constexpr const char basic_data<T>::hex_digits[];
|
||||||
|
template<typename T>
|
||||||
|
constexpr const char basic_data<T>::signs[];
|
||||||
|
template<typename T>
|
||||||
|
constexpr const char basic_data<T>::left_padding_shifts[];
|
||||||
template<typename T>
|
template<typename T>
|
||||||
constexpr const char basic_data<T>::right_padding_shifts[];
|
constexpr const char basic_data<T>::right_padding_shifts[];
|
||||||
template <typename T> constexpr const unsigned basic_data<T>::prefixes[];
|
template<typename T>
|
||||||
|
constexpr const unsigned basic_data<T>::prefixes[];
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
int format_float(char* buf, std::size_t size, const char* format, int precision,
|
int format_float(char *buf, std::size_t size, const char *format, int precision, T value)
|
||||||
T value) {
|
{
|
||||||
# ifdef FMT_FUZZ
|
# ifdef FMT_FUZZ
|
||||||
if (precision > 100000)
|
if (precision > 100000)
|
||||||
throw std::runtime_error(
|
throw std::runtime_error("fuzz mode - avoid large allocation inside snprintf");
|
||||||
"fuzz mode - avoid large allocation inside snprintf");
|
|
||||||
# endif
|
# endif
|
||||||
// Suppress the warning about nonliteral format string.
|
// Suppress the warning about nonliteral format string.
|
||||||
int (*snprintf_ptr)(char *, size_t, const char *, ...) = FMT_SNPRINTF;
|
int (*snprintf_ptr)(char *, size_t, const char *, ...) = FMT_SNPRINTF;
|
||||||
return precision < 0 ? snprintf_ptr(buf, size, format, value)
|
return precision < 0 ? snprintf_ptr(buf, size, format, value) : snprintf_ptr(buf, size, format, precision, value);
|
||||||
: snprintf_ptr(buf, size, format, precision, value);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template FMT_API dragonbox::decimal_fp<float> dragonbox::to_decimal(float x)
|
template FMT_API dragonbox::decimal_fp<float> dragonbox::to_decimal(float x) FMT_NOEXCEPT;
|
||||||
FMT_NOEXCEPT;
|
template FMT_API dragonbox::decimal_fp<double> dragonbox::to_decimal(double x) FMT_NOEXCEPT;
|
||||||
template FMT_API dragonbox::decimal_fp<double> dragonbox::to_decimal(double x)
|
|
||||||
FMT_NOEXCEPT;
|
|
||||||
} // namespace detail
|
} // namespace detail
|
||||||
|
|
||||||
// Workaround a bug in MSVC2013 that prevents instantiation of format_float.
|
// Workaround a bug in MSVC2013 that prevents instantiation of format_float.
|
||||||
int (*instantiate_format_float)(double, int, detail::float_specs,
|
int (*instantiate_format_float)(double, int, detail::float_specs, detail::buffer<char> &) = detail::format_float;
|
||||||
detail::buffer<char>&) = detail::format_float;
|
|
||||||
|
|
||||||
# ifndef FMT_STATIC_THOUSANDS_SEPARATOR
|
# ifndef FMT_STATIC_THOUSANDS_SEPARATOR
|
||||||
template FMT_API detail::locale_ref::locale_ref(const std::locale &loc);
|
template FMT_API detail::locale_ref::locale_ref(const std::locale &loc);
|
||||||
@ -89,8 +80,7 @@ template FMT_API std::locale detail::locale_ref::get<std::locale>() const;
|
|||||||
|
|
||||||
// Explicit instantiations for char.
|
// Explicit instantiations for char.
|
||||||
|
|
||||||
template FMT_API auto detail::thousands_sep_impl(locale_ref)
|
template FMT_API auto detail::thousands_sep_impl(locale_ref) -> thousands_sep_result<char>;
|
||||||
-> thousands_sep_result<char>;
|
|
||||||
template FMT_API char detail::decimal_point_impl(locale_ref);
|
template FMT_API char detail::decimal_point_impl(locale_ref);
|
||||||
|
|
||||||
template FMT_API void detail::buffer<char>::append(const char *, const char *);
|
template FMT_API void detail::buffer<char>::append(const char *, const char *);
|
||||||
@ -99,31 +89,22 @@ template FMT_API void detail::buffer<char>::append(const char*, const char*);
|
|||||||
// There is no correspondent extern template in format.h because of
|
// There is no correspondent extern template in format.h because of
|
||||||
// incompatibility between clang and gcc (#2377).
|
// incompatibility between clang and gcc (#2377).
|
||||||
template FMT_API void detail::vformat_to(
|
template FMT_API void detail::vformat_to(
|
||||||
detail::buffer<char>&, string_view,
|
detail::buffer<char> &, string_view, basic_format_args<FMT_BUFFER_CONTEXT(char)>, detail::locale_ref);
|
||||||
basic_format_args<FMT_BUFFER_CONTEXT(char)>, detail::locale_ref);
|
|
||||||
|
|
||||||
template FMT_API int detail::snprintf_float(double, int, detail::float_specs,
|
template FMT_API int detail::snprintf_float(double, int, detail::float_specs, detail::buffer<char> &);
|
||||||
detail::buffer<char>&);
|
template FMT_API int detail::snprintf_float(long double, int, detail::float_specs, detail::buffer<char> &);
|
||||||
template FMT_API int detail::snprintf_float(long double, int,
|
template FMT_API int detail::format_float(double, int, detail::float_specs, detail::buffer<char> &);
|
||||||
detail::float_specs,
|
template FMT_API int detail::format_float(long double, int, detail::float_specs, detail::buffer<char> &);
|
||||||
detail::buffer<char>&);
|
|
||||||
template FMT_API int detail::format_float(double, int, detail::float_specs,
|
|
||||||
detail::buffer<char>&);
|
|
||||||
template FMT_API int detail::format_float(long double, int, detail::float_specs,
|
|
||||||
detail::buffer<char>&);
|
|
||||||
|
|
||||||
// Explicit instantiations for wchar_t.
|
// Explicit instantiations for wchar_t.
|
||||||
|
|
||||||
template FMT_API auto detail::thousands_sep_impl(locale_ref)
|
template FMT_API auto detail::thousands_sep_impl(locale_ref) -> thousands_sep_result<wchar_t>;
|
||||||
-> thousands_sep_result<wchar_t>;
|
|
||||||
template FMT_API wchar_t detail::decimal_point_impl(locale_ref);
|
template FMT_API wchar_t detail::decimal_point_impl(locale_ref);
|
||||||
|
|
||||||
template FMT_API void detail::buffer<wchar_t>::append(const wchar_t*,
|
template FMT_API void detail::buffer<wchar_t>::append(const wchar_t *, const wchar_t *);
|
||||||
const wchar_t*);
|
|
||||||
|
|
||||||
template struct detail::basic_data<void>;
|
template struct detail::basic_data<void>;
|
||||||
|
|
||||||
FMT_END_NAMESPACE
|
FMT_END_NAMESPACE
|
||||||
|
|
||||||
|
|
||||||
#endif // !SPDLOG_FMT_EXTERNAL
|
#endif // !SPDLOG_FMT_EXTERNAL
|
||||||
|
@ -153,5 +153,4 @@ TEST_CASE("file_event_handlers", "[file_helper]")
|
|||||||
// make sure that the file_helper destrcutor calls the close callbacks if needed
|
// make sure that the file_helper destrcutor calls the close callbacks if needed
|
||||||
REQUIRE(events == std::vector<flags>{flags::before_close, flags::after_close});
|
REQUIRE(events == std::vector<flags>{flags::before_close, flags::after_close});
|
||||||
REQUIRE(file_contents(TEST_FILENAME) == "after_open\nbefore_close\n");
|
REQUIRE(file_contents(TEST_FILENAME) == "after_open\nbefore_close\n");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -52,4 +52,3 @@ TEST_CASE("pass logger pointer", "[macros]")
|
|||||||
SPDLOG_LOGGER_TRACE(&ref, "Test message 1");
|
SPDLOG_LOGGER_TRACE(&ref, "Test message 1");
|
||||||
SPDLOG_LOGGER_DEBUG(&ref, "Test message 2");
|
SPDLOG_LOGGER_DEBUG(&ref, "Test message 2");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user