1 | // Slightly modified version of fmt lib's format.cc (version 1.9.1) source file. |
2 | // Copyright (c) 2012 - 2016, Victor Zverovich |
3 | // All rights reserved. |
4 | |
5 | #ifndef SPDLOG_COMPILED_LIB |
6 | # error Please define SPDLOG_COMPILED_LIB to compile this file. |
7 | #endif |
8 | |
9 | #if !defined(SPDLOG_FMT_EXTERNAL) && !defined(SPDLOG_USE_STD_FORMAT) |
10 | |
11 | #include <spdlog/fmt/bundled/format-inl.h> |
12 | |
13 | FMT_BEGIN_NAMESPACE |
14 | namespace detail { |
15 | |
16 | template FMT_API auto dragonbox::to_decimal(float x) noexcept |
17 | -> dragonbox::decimal_fp<float>; |
18 | template FMT_API auto dragonbox::to_decimal(double x) noexcept |
19 | -> dragonbox::decimal_fp<double>; |
20 | |
21 | #ifndef FMT_STATIC_THOUSANDS_SEPARATOR |
22 | template FMT_API locale_ref::locale_ref(const std::locale& loc); |
23 | template FMT_API auto locale_ref::get<std::locale>() const -> std::locale; |
24 | #endif |
25 | |
26 | // Explicit instantiations for char. |
27 | |
28 | template FMT_API auto thousands_sep_impl(locale_ref) |
29 | -> thousands_sep_result<char>; |
30 | template FMT_API auto decimal_point_impl(locale_ref) -> char; |
31 | |
32 | template FMT_API void buffer<char>::append(const char*, const char*); |
33 | |
34 | // DEPRECATED! |
35 | // There is no correspondent extern template in format.h because of |
36 | // incompatibility between clang and gcc (#2377). |
37 | template FMT_API void vformat_to(buffer<char>&, string_view, |
38 | basic_format_args<FMT_BUFFER_CONTEXT(char)>, |
39 | locale_ref); |
40 | |
41 | // Explicit instantiations for wchar_t. |
42 | |
43 | template FMT_API auto thousands_sep_impl(locale_ref) |
44 | -> thousands_sep_result<wchar_t>; |
45 | template FMT_API auto decimal_point_impl(locale_ref) -> wchar_t; |
46 | |
47 | template FMT_API void buffer<wchar_t>::append(const wchar_t*, const wchar_t*); |
48 | |
49 | } // namespace detail |
50 | FMT_END_NAMESPACE |
51 | |
52 | #endif // !SPDLOG_FMT_EXTERNAL |
53 | |