llvm/libcxx/test/std
Mark de Wever d7444d9f41 [libc++][format] Implement formatters.
This implements the initial version of the `std::formatter` class and its specializations. It also implements the following formatting functions:
- `format`
- `vformat`
- `format_to`
- `vformat_to`
- `format_to_n`
- `formatted_size`

All functions have a `char` and `wchar_t` version. Parsing the format-spec and
using the parsed format-spec hasn't been implemented. The code isn't optimized,
neither for speed, nor for size.

The goal is to have the rudimentary basics working, which can be used as a
basis to improve upon. The formatters used in this commit are simple stubs that
will be replaced by real formatters in later commits.

The formatters that are slated to be replaced in this patch series don't have
an availability macro to avoid merge conflicts.

Note the formatter for `bool` uses `0` and `1` instead of "false" and
"true". This will be fixed when the stub is replaced with a real
formatter.

Implements parts of:
- P0645 Text Formatting

Completes:
- LWG3539 format_to must not copy models of output_iterator<const charT&>

Reviewed By: ldionne, #libc, vitaut

Differential Revision: https://reviews.llvm.org/D96664
2021-09-04 11:41:08 +02:00
..
algorithms [libc++] Remove test-suite annotations for unsupported Clang versions 2021-08-20 15:05:13 -04:00
atomics [libc++][NFC] Fix copy-paste errors in tests 2021-08-18 08:54:18 -04:00
concepts [libc++] [test] IWYU in <concepts> tests. 2021-08-09 09:39:36 -04:00
containers [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
depr [libc++] Remove support for CloudABI, which has been abandoned 2021-08-24 14:11:32 -04:00
diagnostics [runtimes] Simplify how we specify XFAIL & friends based on the triple 2021-07-01 14:03:30 -04:00
experimental [libcxx][nfc] Fix the ASAN bots: update expected.pass.cpp. 2021-05-26 14:06:25 -07:00
input.output [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
iterators [libc++] Define insert_iterator::iter with ranges::iterator_t. 2021-09-02 16:15:53 -04:00
language.support [libc++] Remove support for CloudABI, which has been abandoned 2021-08-24 14:11:32 -04:00
localization [libc++] Remove support for CloudABI, which has been abandoned 2021-08-24 14:11:32 -04:00
namespace
numerics [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
ranges [libc++] Add an assertion in the subrange constructors with a size hint 2021-09-03 16:04:02 -04:00
re [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
strings [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
thread [SystemZ][z/OS] Avoid assumption for character value in futures tests 2021-08-20 14:03:03 -04:00
utilities [libc++][format] Implement formatters. 2021-09-04 11:41:08 +02:00
pstl