Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								4038c859e5 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::is_permutation`  
							
							 
							
							... 
							
							
							
							Co-authored-by: Konstantin Varlamov <varconst@apple.com>
Differential Revision: https://reviews.llvm.org/D127194  
							
						 
						
							2022-08-04 10:54:37 -07:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								a203acb9dd 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::clamp`  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D126193  
							
						 
						
							2022-08-04 02:45:32 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								36c746ca2d 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::rotate`.  
							
							 
							
							... 
							
							
							
							Also fix `ranges::stable_sort` and `ranges::inplace_merge` to support
proxy iterators now that their internal implementations can correctly
dispatch `rotate`.
Differential Revision: https://reviews.llvm.org/D130758  
							
						 
						
							2022-08-03 16:04:24 -07:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								68264b6494 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::{prev, next}_permutation`.  
							
							 
							
							... 
							
							
							
							Co-authored-by: Konstantin Varlamov <varconst@apple.com>
Differential Revision: https://reviews.llvm.org/D129859  
							
						 
						
							2022-08-02 22:46:15 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								6bdb642234 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::sample`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D130865  
							
						 
						
							2022-08-02 22:34:23 -07:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								93172c1c2b 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::replace_copy{,_if}`.  
							
							 
							
							... 
							
							
							
							Co-authored-by: Konstantin Varlamov <varconst@apple.com>
Differential Revision: https://reviews.llvm.org/D129806  
							
						 
						
							2022-08-02 22:32:01 -07:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								760d2b462c 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::remove_copy{, _if}`.  
							
							 
							
							... 
							
							
							
							Co-authored-by: Hui Xie <hui.xie1990@gmail.com>
Differential Revision: https://reviews.llvm.org/D130599  
							
						 
						
							2022-08-02 22:19:13 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								c64c3d31c4 
								
							 
						 
						
							
							
								
								[libc++][ranges][NFC] Fix a few links on the Ranges status page.  
							
							 
							
							
							
						 
						
							2022-08-01 20:43:59 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								db7d795978 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `std::ranges::partial_sort_copy`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D130532  
							
						 
						
							2022-07-30 02:42:18 -07:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								72f57e3a30 
								
							 
						 
						
							
							
								
								[libc++][ranges] implement `std::ranges::unique{_copy}`  
							
							 
							
							... 
							
							
							
							implement `std::ranges::unique` and `std::ranges::unique_copy`
Differential Revision: https://reviews.llvm.org/D130404  
							
						 
						
							2022-07-29 08:28:17 +01:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								8a61749f76 
								
							 
						 
						
							
							
								
								[libc++][ranges] implement `std::ranges::inplace_merge`  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D130627  
							
						 
						
							2022-07-28 08:37:48 +01:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								d406c6493e 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::is_heap{,_until}`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D130547  
							
						 
						
							2022-07-26 16:11:24 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								ead7302bbb 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::generate{,_n}`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D130552  
							
						 
						
							2022-07-26 15:50:32 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								14cf74d65d 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::shuffle`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D130321  
							
						 
						
							2022-07-22 09:59:13 -07:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								c559964d85 
								
							 
						 
						
							
							
								
								[libc++][ranges] implement `std::ranges::includes`  
							
							 
							
							... 
							
							
							
							implement `std::ranges::includes` and delegate to `std::includes`
Differential Revision: https://reviews.llvm.org/D130116  
							
						 
						
							2022-07-22 10:27:48 +01:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								0f6364b8a1 
								
							 
						 
						
							
							
								
								[libc++][ranges] implement `std::ranges::equal_range`  
							
							 
							
							... 
							
							
							
							implement `std::ranges::equal_range` which delegates to
`std::equal_range`
Differential Revision: https://reviews.llvm.org/D129796  
							
						 
						
							2022-07-22 10:24:08 +01:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								065202f3ca 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `std::ranges::partition_{point,copy}`.  
							
							 
							
							... 
							
							
							
							Reviewed By: #libc, huixie90, ldionne
Differential Revision: https://reviews.llvm.org/D130070  
							
						 
						
							2022-07-20 11:39:07 -07:00  
						
					 
				
					
						
							
							
								 
								varconst
							
						 
						
							 
							
							
							
							
								
							
							
								5dd19ada57 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::partial_sort`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D128744  
							
						 
						
							2022-07-19 20:10:34 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								8ed702b83f 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::{,stable_}partition`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D129624  
							
						 
						
							2022-07-18 21:06:17 -07:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								5492b71db3 
								
							 
						 
						
							
							
								
								[libc++] Update RangesAlgorithms.csv  
							
							 
							
							
							
						 
						
							2022-07-15 00:18:31 +02:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								3151b95dad 
								
							 
						 
						
							
							
								
								[libc++][ranges] implement `std::ranges::set_union`  
							
							 
							
							... 
							
							
							
							[libc++][ranges] implement `std::ranges::set_union`
Differential Revision: https://reviews.llvm.org/D129657  
							
						 
						
							2022-07-14 21:05:30 +01:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								a5c0638dec 
								
							 
						 
						
							
							
								
								[libc++][ranges] implement `std::ranges::set_symmetric_difference`  
							
							 
							
							... 
							
							
							
							[libc++][ranges] implement `std::ranges::set_symmetric_difference`
Differential Revision: https://reviews.llvm.org/D129520  
							
						 
						
							2022-07-13 21:24:32 +01:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								101d1e9b3c 
								
							 
						 
						
							
							
								
								[libc++] Implement ranges::find_end, ranges::search{, _n}  
							
							 
							
							... 
							
							
							
							Reviewed By: var-const, #libc, huixie90
Spies: thakis, h-vetinari, huixie90, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D124079  
							
						 
						
							2022-07-13 20:30:55 +02:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								1f04759316 
								
							 
						 
						
							
							
								
								Revert "[libc++] Implement ranges::find_end, ranges::search{, _n}"  
							
							 
							
							... 
							
							
							
							This reverts commit 76a7651850 . 
							
						 
						
							2022-07-13 13:41:25 +02:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								76a7651850 
								
							 
						 
						
							
							
								
								[libc++] Implement ranges::find_end, ranges::search{, _n}  
							
							 
							
							... 
							
							
							
							Reviewed By: var-const, #libc, huixie90
Spies: h-vetinari, huixie90, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D124079  
							
						 
						
							2022-07-13 13:11:26 +02:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								d4c53202eb 
								
							 
						 
						
							
							
								
								[libc++][ranges][NFC] Consolidate some repetitive range algorithm tests:  
							
							 
							
							... 
							
							
							
							- checking that the algorithm supports predicates returning
  a non-boolean type that's implicitly convertible to `bool`;
- checking that predicates and/or projections are invoked using
  `std::invoke`.
Differential Revision: https://reviews.llvm.org/D129414  
							
						 
						
							2022-07-12 02:06:36 -07:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								7d426a392f 
								
							 
						 
						
							
							
								
								[libc++] Implement ranges::{reverse, rotate}_copy  
							
							 
							
							... 
							
							
							
							Reviewed By: var-const, #libc
Spies: huixie90, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D127211  
							
						 
						
							2022-07-11 21:13:08 +02:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								96b674f23c 
								
							 
						 
						
							
							
								
								[libc++][ranges] implement `std::ranges::set_intersection`  
							
							 
							
							... 
							
							
							
							implement `std::ranges::set_intersection` by reusing the classic `std::set_intersenction`
added unit tests
Differential Revision: https://reviews.llvm.org/D129233  
							
						 
						
							2022-07-11 06:55:09 +01:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								c945bd0da6 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement modifying heap algorithms:  
							
							 
							
							... 
							
							
							
							- `ranges::make_heap`;
- `ranges::push_heap`;
- `ranges::pop_heap`;
- `ranges::sort_heap`.
Differential Revision: https://reviews.llvm.org/D128115  
							
						 
						
							2022-07-08 13:48:41 -07:00  
						
					 
				
					
						
							
							
								 
								Konstantin Varlamov
							
						 
						
							 
							
							
							
							
								
							
							
								23c7328bad 
								
							 
						 
						
							
							
								
								[libc++][ranges] Implement `ranges::nth_element`.  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D128149  
							
						 
						
							2022-07-08 11:26:02 -07:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								1cdec6c96e 
								
							 
						 
						
							
							
								
								[libcxx][ranges] implement `std::ranges::set_difference`  
							
							 
							
							... 
							
							
							
							implement `std::ranges::set_difference`
reused classic std::set_difference
added unit tests
Differential Revision: https://reviews.llvm.org/D128983  
							
						 
						
							2022-07-08 13:26:23 +01:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								a3ac6891f8 
								
							 
						 
						
							
							
								
								[libc++] Fix a few things in RangesAlgorithms.csv  
							
							 
							
							
							
						 
						
							2022-07-07 01:57:20 +02:00  
						
					 
				
					
						
							
							
								 
								Nikolas Klauser
							
						 
						
							 
							
							
							
							
								
							
							
								f8cbe3cdf0 
								
							 
						 
						
							
							
								
								[libc++] Implement ranges::remove{, _if}  
							
							 
							
							... 
							
							
							
							Reviewed By: var-const, #libc
Spies: huixie90, sstefan1, libcxx-commits, mgorny
Differential Revision: https://reviews.llvm.org/D128618  
							
						 
						
							2022-07-06 18:47:13 +02:00  
						
					 
				
					
						
							
							
								 
								Hui Xie
							
						 
						
							 
							
							
							
							
								
							
							
								25607d143d 
								
							 
						 
						
							
							
								
								[libc++] Implement `std::ranges::merge`  
							
							 
							
							... 
							
							
							
							Implement `std::ranges::merge`. added unit tests
Differential Revision: https://reviews.llvm.org/D128611  
							
						 
						
							2022-07-04 13:44:31 +01:00  
						
					 
				
					
						
							
							
								 
								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