Konstantin Varlamov
94c7b89fe5
[libc++][ranges] Implement ranges::stable_sort
.
...
Differential Revision: https://reviews.llvm.org/D127834
2022-07-01 16:34:26 -07:00
Konstantin Varlamov
d417710c3a
[libc++][ranges][NFC] Fix a format error on the ranges status page.
2022-06-18 02:22:26 -07:00
Konstantin Varlamov
ff3989e6ae
[libc++][ranges] Implement ranges::sort
.
...
Differential Revision: https://reviews.llvm.org/D127557
2022-06-16 15:21:06 -07:00
Nikolas Klauser
afd5a4f2dc
[libc++] Implement ranges::lexicographical_compare
...
Reviewed By: var-const, Mordante, #libc
Spies: H-G-Hristov, sstefan1, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D127130
2022-06-15 22:29:21 +02:00
Nikolas Klauser
ee397722cc
[libc++][NFC] Update ranges algorithms status page
2022-06-11 16:21:34 +02:00
Nikolas Klauser
ff6d5dee71
[libc++] Implement ranges::replace{, _if}
...
Reviewed By: var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D126283
2022-06-10 11:54:46 +02:00
Nikolas Klauser
b79b2b6772
[libc++] Implement ranges::find_first_of
...
Reviewed By: Mordante, var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D126529
2022-06-06 22:29:02 +02:00
Nikolas Klauser
8171586176
[libc++][ranges] Implement ranges::binary_search and ranges::{lower, upper}_bound
...
Reviewed By: Mordante, var-const, ldionne, #libc
Spies: sstefan1, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D121964
2022-06-06 13:33:18 +02:00
varconst
7c63cc198b
[libc++][ranges][NFC] Fix a patch link in ranges status.
2022-06-03 20:39:00 -07:00
varconst
faf43ad7ae
[libc++][ranges][NFC] Mark range algorithms that are in progress.
2022-06-03 20:02:46 -07:00
Nikolas Klauser
3606da5fba
[libc++] Enable ranges_robust_against* and niebloid tests for implemented ranges algorithms
...
Spies: libcxx-commits
Differential Revision: https://reviews.llvm.org/D126477
2022-05-27 10:40:01 +02:00
Nikolas Klauser
11e3ad299f
[libc++] Implement ranges::is_sorted{, _until}
...
Reviewed By: Mordante, var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D125608
2022-05-27 10:28:44 +02:00
Nikolas Klauser
0e3dc1a52f
[libc++] Implement ranges::{all, any, none}_of
...
Reviewed By: ldionne, var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D123016
2022-05-26 16:50:08 +02:00
Nikolas Klauser
569d663020
[libc++] Implement ranges::equal
...
Reviewed By: var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D123681
2022-05-26 10:46:54 +02:00
Nikolas Klauser
7af89a379c
[libc++] Implement ranges::fill{, _n}
...
Reviewed By: var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D123462
2022-05-25 10:27:13 +02:00
Nikolas Klauser
1d1a191edc
[libc++] Implement ranges::reverse
...
Reviewed By: var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D125752
2022-05-24 10:33:57 +02:00
Nikolas Klauser
37ba1b9d1a
[libc++] Implement ranges::is_partitioned
...
Reviewed By: var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D124440
2022-05-06 13:02:38 +02:00
Nikolas Klauser
80045e9afa
[libc++] Implement ranges::for_each{, _n}
...
Reviewed By: var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D124332
2022-05-04 20:28:01 +02:00
Nikolas Klauser
1d83750f63
[libc++] Implement ranges::copy{, _n, _if, _backward}
...
Reviewed By: Mordante, var-const, #libc
Spies: sstefan1, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D122982
2022-04-15 13:44:11 +02:00
Nikolas Klauser
58d9ab70ae
[libc++][ranges] Implement ranges::minmax and ranges::minmax_element
...
Reviewed By: var-const, #libc, ldionne
Spies: sstefan1, ldionne, BRevzin, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D120637
2022-04-14 15:37:22 +02:00
Nikolas Klauser
1306b1025c
[libc++][ranges] Implement ranges::count{, _if}
...
Reviewed By: var-const, Mordante, ldionne, #libc
Spies: tcanens, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D121523
2022-04-07 15:18:14 +02:00
Nikolas Klauser
3ba8548c8e
[libc++][ranges] Implement ranges::transform
...
Reviewed By: ldionne, var-const, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D122173
2022-04-05 11:06:28 +02:00
Nikolas Klauser
e476df5629
[libc++][ranges] Implement ranges::max
...
Reviewed By: Mordante, var-const, #libc
Spies: sstefan1, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D122002
2022-04-03 17:04:56 +02:00
Nikolas Klauser
f83d833e41
[libc++][ranges] Implement ranges::min
...
Reviewed By: var-const, Mordante, #libc
Spies: jwakely, ldionne, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D119589
2022-03-18 12:52:21 +01:00
Nikolas Klauser
ee0f8c4010
[libc++][ranges] Implement ranges::find{, _if, _if_not}
...
Reviewed By: var-const, #libc, ldionne
Spies: ldionne, tcanens, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D121248
2022-03-12 01:46:02 +01:00
Nikolas Klauser
c2cd15a665
[libc++][ranges] Implement ranges::mismatch
...
Implement `ranges::mismatch`
Reviewed By: Quuxplusone, ldionne, #libc
Spies: libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D117817
2022-03-08 23:20:40 +01:00
Konstantin Varlamov
49ff418ed5
[libc++][ranges][NFC] Small formatting fixes to the Ranges algorithms' status.
2022-02-15 09:43:29 -08:00
Nikolas Klauser
3b470d1ce9
[libc++][ranges] Implement ranges::min_element
...
Implement ranges::min_element
Reviewed By: Quuxplusone, Mordante, #libc
Spies: miscco, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D117025
2022-02-11 17:20:27 +01:00
Nikolas Klauser
9d90531904
[libc++][ranges] Implement std::ranges::swap_ranges()
...
Implement `std::ranges::swap_ranges()`
Reviewed By: Quuxplusone, #libc, ldionne
Spies: ldionne, mgorny, jloser, libcxx-commits
Differential Revision: https://reviews.llvm.org/D116303
2022-02-10 16:01:45 +01:00
Konstantin Varlamov
b9bc3c107c
[libc++][ranges] Implement construct_at
and destroy{,_at}
.
...
Differential Revision: https://reviews.llvm.org/D116078
2022-01-12 16:01:04 -08:00
Konstantin Varlamov
8d23b7420c
[libc++][ranges] Implement uninitialized_copy{,_n}
and uninitialized_move{,_n}
.
...
Also implement `in_out_result` which is a prerequisite.
Differential Revision: https://reviews.llvm.org/D116023
2022-01-10 22:49:50 -08:00
Konstantin Varlamov
754ea6fd4d
[libc++][ranges] Implement uninitialized_value_construct{,_n}
and uninitialized_fill{,_n}
.
...
Also:
- refactor out `__voidify`;
- use the `destroy` algorithm internally;
- refactor out helper classes used in tests for `uninitialized_*`
algorithms.
Differential Revision: https://reviews.llvm.org/D115626
2021-12-20 00:24:27 -08:00
Christopher Di Bella
b8bba3d801
[libcxx][NFC] adds var-const@ as the owner for the uninitialised algos
2021-11-22 18:44:13 +00:00
Christopher Di Bella
c5bf8d6f76
[libcxx][NFC] adds status entry for ranges algorithms
...
Differential Revision: https://reviews.llvm.org/D114295
2021-11-22 18:35:11 +00:00