1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 09:47:35 +00:00

AK: Add Vector::insert_before_matching(T&&, callback);

This allows you to do things like:

vector.insert_before_matching(value, [](auto& entry) {
    return value < entry;
});

Basically it scans until it finds an element that matches the condition
callback and then inserts the new value before the matching element.
This commit is contained in:
Andreas Kling 2019-07-04 14:20:48 +02:00
parent 57da8792fd
commit 55a5c46253
3 changed files with 47 additions and 0 deletions

View file

@ -41,5 +41,21 @@ int main()
}
EXPECT_EQ(loop_counter, 2);
{
Vector<String> strings;
strings.append("abc");
strings.append("def");
strings.append("ghi");
strings.insert_before_matching("f-g", [](auto& entry) {
return "f-g" < entry;
});
EXPECT_EQ(strings[0], "abc");
EXPECT_EQ(strings[1], "def");
EXPECT_EQ(strings[2], "f-g");
EXPECT_EQ(strings[3], "ghi");
}
return 0;
}