@@ -113,7 +113,7 @@ void write_escaped_path(basic_memory_buffer<Char>& quoted,
113
113
114
114
} // namespace detail
115
115
116
- FMT_EXPORT
116
+ FMT_BEGIN_EXPORT
117
117
template <typename Char> struct formatter <std::filesystem::path, Char> {
118
118
private:
119
119
format_specs specs_;
@@ -162,6 +162,7 @@ template <typename Char> struct formatter<std::filesystem::path, Char> {
162
162
specs);
163
163
}
164
164
};
165
+ FMT_END_EXPORT
165
166
166
167
class path : public std ::filesystem::path {
167
168
public:
@@ -181,9 +182,7 @@ class path : public std::filesystem::path {
181
182
FMT_END_NAMESPACE
182
183
#endif // FMT_CPP_LIB_FILESYSTEM
183
184
184
- FMT_BEGIN_NAMESPACE
185
- FMT_EXPORT
186
- template <std::size_t N, typename Char>
185
+ FMT_EXPORT FMT_BEGIN_NAMESPACE template <std::size_t N, typename Char>
187
186
struct formatter <std::bitset<N>, Char>
188
187
: nested_formatter<basic_string_view<Char>, Char> {
189
188
private:
@@ -209,15 +208,12 @@ struct formatter<std::bitset<N>, Char>
209
208
}
210
209
};
211
210
212
- FMT_EXPORT
213
211
template <typename Char>
214
212
struct formatter <std::thread::id, Char> : basic_ostream_formatter<Char> {};
215
213
FMT_END_NAMESPACE
216
214
217
215
#ifdef __cpp_lib_optional
218
- FMT_BEGIN_NAMESPACE
219
- FMT_EXPORT
220
- template <typename T, typename Char>
216
+ FMT_EXPORT FMT_BEGIN_NAMESPACE template <typename T, typename Char>
221
217
struct formatter <std::optional<T>, Char,
222
218
std::enable_if_t <is_formattable<T, Char>::value>> {
223
219
private:
@@ -277,14 +273,13 @@ FMT_END_NAMESPACE
277
273
#endif
278
274
279
275
#ifdef __cpp_lib_expected
280
- FMT_BEGIN_NAMESPACE
276
+ FMT_EXPORT FMT_BEGIN_NAMESPACE
281
277
282
- FMT_EXPORT
283
- template <typename T, typename E, typename Char>
284
- struct formatter <std::expected<T, E>, Char,
285
- std::enable_if_t <(std::is_void<T>::value ||
286
- is_formattable<T, Char>::value) &&
287
- is_formattable<E, Char>::value>> {
278
+ template <typename T, typename E, typename Char>
279
+ struct formatter <std::expected<T, E>, Char,
280
+ std::enable_if_t <(std::is_void<T>::value ||
281
+ is_formattable<T, Char>::value) &&
282
+ is_formattable<E, Char>::value>> {
288
283
FMT_CONSTEXPR auto parse (parse_context<Char>& ctx) -> const Char* {
289
284
return ctx.begin ();
290
285
}
@@ -310,9 +305,8 @@ FMT_END_NAMESPACE
310
305
#endif // __cpp_lib_expected
311
306
312
307
#ifdef __cpp_lib_source_location
313
- FMT_BEGIN_NAMESPACE
314
- FMT_EXPORT
315
- template <> struct formatter <std::source_location> {
308
+ FMT_EXPORT FMT_BEGIN_NAMESPACE template <>
309
+ struct formatter <std::source_location> {
316
310
FMT_CONSTEXPR auto parse (parse_context<>& ctx) { return ctx.begin (); }
317
311
318
312
template <typename FormatContext>
@@ -367,7 +361,7 @@ template <typename T, typename C> struct is_variant_formattable {
367
361
detail::is_variant_formattable_<T, C>::value;
368
362
};
369
363
370
- FMT_EXPORT
364
+ FMT_BEGIN_EXPORT
371
365
template <typename Char> struct formatter <std::monostate, Char> {
372
366
FMT_CONSTEXPR auto parse (parse_context<Char>& ctx) -> const Char* {
373
367
return ctx.begin ();
@@ -380,7 +374,6 @@ template <typename Char> struct formatter<std::monostate, Char> {
380
374
}
381
375
};
382
376
383
- FMT_EXPORT
384
377
template <typename Variant, typename Char>
385
378
struct formatter <
386
379
Variant, Char,
@@ -410,11 +403,12 @@ struct formatter<
410
403
return out;
411
404
}
412
405
};
406
+ FMT_END_EXPORT
413
407
FMT_END_NAMESPACE
414
408
#endif // FMT_CPP_LIB_VARIANT
415
409
416
410
FMT_BEGIN_NAMESPACE
417
- FMT_EXPORT
411
+ FMT_BEGIN_EXPORT
418
412
template <> struct formatter <std::error_code> {
419
413
private:
420
414
format_specs specs_;
@@ -448,6 +442,7 @@ template <> struct formatter<std::error_code> {
448
442
specs);
449
443
}
450
444
};
445
+ FMT_END_EXPORT
451
446
452
447
#if FMT_USE_RTTI
453
448
namespace detail {
@@ -520,7 +515,7 @@ auto write_demangled_name(OutputIt out, const std::type_info& ti) -> OutputIt {
520
515
521
516
} // namespace detail
522
517
523
- FMT_EXPORT
518
+ FMT_BEGIN_EXPORT
524
519
template <typename Char>
525
520
struct formatter <std::type_info, Char // DEPRECATED! Mixing code unit types.
526
521
> {
@@ -537,7 +532,6 @@ struct formatter<std::type_info, Char // DEPRECATED! Mixing code unit types.
537
532
};
538
533
#endif
539
534
540
- FMT_EXPORT
541
535
template <typename T, typename Char>
542
536
struct formatter <
543
537
T, Char, // DEPRECATED! Mixing code unit types.
@@ -571,6 +565,7 @@ struct formatter<
571
565
return detail::write_bytes<Char>(out, string_view (ex.what ()));
572
566
}
573
567
};
568
+ FMT_END_EXPORT
574
569
575
570
namespace detail {
576
571
@@ -603,7 +598,7 @@ struct is_bit_reference_like<std::__bit_const_reference<C>> {
603
598
// We can't use std::vector<bool, Allocator>::reference and
604
599
// std::bitset<N>::reference because the compiler can't deduce Allocator and N
605
600
// in partial specialization.
606
- FMT_EXPORT
601
+ FMT_BEGIN_EXPORT
607
602
template <typename BitRef, typename Char>
608
603
struct formatter <BitRef, Char,
609
604
enable_if_t <detail::is_bit_reference_like<BitRef>::value>>
@@ -623,7 +618,6 @@ template <typename T> auto ptr(const std::shared_ptr<T>& p) -> const void* {
623
618
return p.get ();
624
619
}
625
620
626
- FMT_EXPORT
627
621
template <typename T, typename Char>
628
622
struct formatter <std::atomic<T>, Char,
629
623
enable_if_t <is_formattable<T, Char>::value>>
@@ -634,9 +628,10 @@ struct formatter<std::atomic<T>, Char,
634
628
return formatter<T, Char>::format (v.load (), ctx);
635
629
}
636
630
};
631
+ FMT_END_EXPORT
637
632
638
633
#ifdef __cpp_lib_atomic_flag_test
639
- FMT_EXPORT
634
+ FMT_BEGIN_EXPORT
640
635
template <typename Char>
641
636
struct formatter <std::atomic_flag, Char> : formatter<bool , Char> {
642
637
template <typename FormatContext>
@@ -645,9 +640,10 @@ struct formatter<std::atomic_flag, Char> : formatter<bool, Char> {
645
640
return formatter<bool , Char>::format (v.test (), ctx);
646
641
}
647
642
};
643
+ FMT_END_EXPORT
648
644
#endif // __cpp_lib_atomic_flag_test
649
645
650
- FMT_EXPORT
646
+ FMT_BEGIN_EXPORT
651
647
template <typename T, typename Char> struct formatter <std::complex<T>, Char> {
652
648
private:
653
649
detail::dynamic_format_specs<Char> specs_;
@@ -710,7 +706,6 @@ template <typename T, typename Char> struct formatter<std::complex<T>, Char> {
710
706
}
711
707
};
712
708
713
- FMT_EXPORT
714
709
template <typename T, typename Char>
715
710
struct formatter <std::reference_wrapper<T>, Char,
716
711
enable_if_t <is_formattable<remove_cvref_t <T>, Char>::value>>
@@ -721,6 +716,7 @@ struct formatter<std::reference_wrapper<T>, Char,
721
716
return formatter<remove_cvref_t <T>, Char>::format (ref.get (), ctx);
722
717
}
723
718
};
719
+ FMT_END_EXPORT
724
720
725
721
FMT_END_NAMESPACE
726
722
#endif // FMT_STD_H_
0 commit comments