[llvm] [llvm][ADT] Add wrappers to `std::includes` (PR #143297)
Jakub Kuderski via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 9 08:29:10 PDT 2025
================
@@ -1567,6 +1567,30 @@ TEST(STLExtrasTest, Mismatch) {
}
}
+TEST(STLExtrasTest, Includes) {
+ {
+ std::vector<int> V1 = {1, 2};
+ std::vector<int> V2;
+ EXPECT_TRUE(includes(V1, V2));
+ EXPECT_FALSE(includes(V2, V1));
+ V2.push_back(1);
+ EXPECT_TRUE(includes(V1, V2));
+ V2.push_back(3);
+ EXPECT_FALSE(includes(V1, V2));
+ }
+
+ {
+ std::vector<int> V1 = {3, 2, 1};
+ std::vector<int> V2;
+ EXPECT_TRUE(includes(V1, V2, deref<std::greater<>>()));
+ EXPECT_FALSE(includes(V2, V1, deref<std::greater<>>()));
+ V2.push_back(3);
+ EXPECT_TRUE(includes(V1, V2, deref<std::greater<>>()));
+ V2.push_back(0);
+ EXPECT_FALSE(includes(V1, V2, deref<std::greater<>>()));
----------------
kuhar wrote:
Why do we need the `deref`?
https://github.com/llvm/llvm-project/pull/143297
More information about the llvm-commits
mailing list