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