1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 06:47:34 +00:00

AK: Make String::count not use strstr and take a StringView

This was needlessly copying StringView arguments, and was also using
strstr internally, which meant it was doing a bunch of unnecessary
strlen calls on it. This also moves the implementation to StringUtils
to allow API consistency between String and StringView.
This commit is contained in:
Idan Horowitz 2021-09-11 01:02:24 +03:00
parent 4e40eaf34c
commit 6d2b003b6e
5 changed files with 19 additions and 17 deletions

View file

@ -286,7 +286,7 @@ public:
}
int replace(const String& needle, const String& replacement, bool all_occurrences = false);
[[nodiscard]] size_t count(const String& needle) const;
[[nodiscard]] size_t count(StringView const& needle) const { return StringUtils::count(*this, needle); }
[[nodiscard]] String reverse() const;
template<typename... Ts>