xref: /freebsd/contrib/llvm-project/libcxx/modules/std/format.inc (revision 5f757f3ff9144b609b3c433dfd370cc6bdc191ad)
1*5f757f3fSDimitry Andric// -*- C++ -*-
2*5f757f3fSDimitry Andric//===----------------------------------------------------------------------===//
3*5f757f3fSDimitry Andric//
4*5f757f3fSDimitry Andric// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5*5f757f3fSDimitry Andric// See https://llvm.org/LICENSE.txt for license information.
6*5f757f3fSDimitry Andric// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7*5f757f3fSDimitry Andric//
8*5f757f3fSDimitry Andric//===----------------------------------------------------------------------===//
9*5f757f3fSDimitry Andric
10*5f757f3fSDimitry Andricexport namespace std {
11*5f757f3fSDimitry Andric  // [format.context], class template basic_format_context
12*5f757f3fSDimitry Andric  using std::basic_format_context;
13*5f757f3fSDimitry Andric  using std::format_context;
14*5f757f3fSDimitry Andric#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
15*5f757f3fSDimitry Andric  using std::wformat_context;
16*5f757f3fSDimitry Andric#endif
17*5f757f3fSDimitry Andric
18*5f757f3fSDimitry Andric  // [format.args], class template basic_format_args
19*5f757f3fSDimitry Andric  using std::basic_format_args;
20*5f757f3fSDimitry Andric  using std::format_args;
21*5f757f3fSDimitry Andric#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
22*5f757f3fSDimitry Andric  using std::wformat_args;
23*5f757f3fSDimitry Andric#endif
24*5f757f3fSDimitry Andric
25*5f757f3fSDimitry Andric  // [format.fmt.string], class template basic_format_string
26*5f757f3fSDimitry Andric  using std::basic_format_string;
27*5f757f3fSDimitry Andric  using std::format_string;
28*5f757f3fSDimitry Andric#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
29*5f757f3fSDimitry Andric  using std::wformat_string;
30*5f757f3fSDimitry Andric#endif
31*5f757f3fSDimitry Andric#if _LIBCPP_STD_VER >= 26
32*5f757f3fSDimitry Andric  using std::runtime_format;
33*5f757f3fSDimitry Andric#endif //_LIBCPP_STD_VER >= 26
34*5f757f3fSDimitry Andric
35*5f757f3fSDimitry Andric  // [format.functions], formatting functions
36*5f757f3fSDimitry Andric  using std::format;
37*5f757f3fSDimitry Andric  using std::format_to;
38*5f757f3fSDimitry Andric  using std::vformat;
39*5f757f3fSDimitry Andric  using std::vformat_to;
40*5f757f3fSDimitry Andric
41*5f757f3fSDimitry Andric  using std::format_to_n;
42*5f757f3fSDimitry Andric  using std::format_to_n_result;
43*5f757f3fSDimitry Andric  using std::formatted_size;
44*5f757f3fSDimitry Andric
45*5f757f3fSDimitry Andric  // [format.formatter], formatter
46*5f757f3fSDimitry Andric  using std::formatter;
47*5f757f3fSDimitry Andric
48*5f757f3fSDimitry Andric#if _LIBCPP_STD_VER >= 23
49*5f757f3fSDimitry Andric  // [format.formattable], concept formattable
50*5f757f3fSDimitry Andric  using std::formattable;
51*5f757f3fSDimitry Andric#endif
52*5f757f3fSDimitry Andric
53*5f757f3fSDimitry Andric  // [format.parse.ctx], class template basic_format_parse_context
54*5f757f3fSDimitry Andric  using std::basic_format_parse_context;
55*5f757f3fSDimitry Andric  using std::format_parse_context;
56*5f757f3fSDimitry Andric#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
57*5f757f3fSDimitry Andric  using std::wformat_parse_context;
58*5f757f3fSDimitry Andric#endif
59*5f757f3fSDimitry Andric
60*5f757f3fSDimitry Andric#if _LIBCPP_STD_VER >= 23
61*5f757f3fSDimitry Andric  // [format.range], formatting of ranges
62*5f757f3fSDimitry Andric  // [format.range.fmtkind], variable template format_kind
63*5f757f3fSDimitry Andric  using std::format_kind;
64*5f757f3fSDimitry Andric  using std::range_format;
65*5f757f3fSDimitry Andric
66*5f757f3fSDimitry Andric  // [format.range.formatter], class template range_formatter
67*5f757f3fSDimitry Andric  using std::range_formatter;
68*5f757f3fSDimitry Andric#endif // _LIBCPP_STD_VER >= 23
69*5f757f3fSDimitry Andric
70*5f757f3fSDimitry Andric  // [format.arg], class template basic_format_arg
71*5f757f3fSDimitry Andric  using std::basic_format_arg;
72*5f757f3fSDimitry Andric  using std::visit_format_arg;
73*5f757f3fSDimitry Andric
74*5f757f3fSDimitry Andric  // [format.arg.store], class template format-arg-store
75*5f757f3fSDimitry Andric  using std::make_format_args;
76*5f757f3fSDimitry Andric#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
77*5f757f3fSDimitry Andric  using std::make_wformat_args;
78*5f757f3fSDimitry Andric#endif
79*5f757f3fSDimitry Andric
80*5f757f3fSDimitry Andric  // [format.error], class format_error
81*5f757f3fSDimitry Andric  using std::format_error;
82*5f757f3fSDimitry Andric} // namespace std
83