llvm-project/libcxx
Konstantin Varlamov 295b951ebc [lib++][ranges][NFC] Refactor `iterator_operations.h` to use tags.
Change the mechanism in `iterator_operations.h` to pass around a generic
policy tag indicating whether an internal function is being invoked from
a "classic" STL algorithm or a ranges algorithm. `IterOps` is now
a template class specialized on the policy tag.

The advantage is that this mechanism is more generic and allows defining
arbitrary conditions in a clean manner.

Also add a few more iterator functions to `IterOps`.

Differential Revision: https://reviews.llvm.org/D129390
2022-07-12 17:53:58 -07:00
..
benchmarks [libc++][format] Adds integral formatter benchmarks. 2022-07-12 19:17:57 +02:00
cmake [libc++] Always build c++experimental.a 2022-07-08 16:58:22 -04:00
docs [libc++][ranges][NFC] Consolidate some repetitive range algorithm tests: 2022-07-12 02:06:36 -07:00
include [lib++][ranges][NFC] Refactor `iterator_operations.h` to use tags. 2022-07-12 17:53:58 -07:00
lib [libcxx][AIX] Enable ABI list checking for XCOFF 2022-06-14 13:16:00 -04:00
src [libc++] Always build c++experimental.a 2022-07-08 16:58:22 -04:00
test [libc++][test] Adds spaceship support to macros. 2022-07-12 21:10:23 +02:00
utils [libc++] Always build c++experimental.a 2022-07-08 16:58:22 -04:00
.clang-format [libcxx] Remove extraneous '---' lines in .clang-format files 2022-06-15 01:34:37 -07:00
.clang-tidy [libc++] Make parameter names consistent and enforce the naming style using readability-identifier-naming 2022-07-08 18:17:47 +02:00
.gitignore
CMakeLists.txt [libc++] Always build c++experimental.a 2022-07-08 16:58:22 -04:00
CREDITS.TXT Microsoft's floating-point to_chars powered by Ryu and Ryu Printf 2021-12-12 16:34:50 +01:00
LICENSE.TXT
TODO.TXT [libc++] Disallow volatile types in std::allocator 2021-09-22 11:47:38 -04:00
appveyor-reqs-install.cmd
appveyor.yml [libc++] Always build c++experimental.a 2022-07-08 16:58:22 -04:00