1
0
mirror of https://github.com/OpenTTD/OpenTTD synced 2026-01-17 17:32:45 +01:00

Codechange: Add a std::string overload for StrMakeValidInPlace() and a moving std::string&& overload for StrMakeValid(). (#13962)

This commit is contained in:
frosch
2025-04-07 18:22:47 +02:00
committed by GitHub
parent 981b2a94db
commit 2cdf2bedfa
8 changed files with 38 additions and 9 deletions

View File

@@ -21,8 +21,19 @@ void strecpy(std::span<char> dst, std::string_view src);
std::string FormatArrayAsHex(std::span<const uint8_t> data);
[[nodiscard]] std::string StrMakeValid(std::string_view str, StringValidationSettings settings = SVS_REPLACE_WITH_QUESTION_MARK);
void StrMakeValidInPlace(char *str, StringValidationSettings settings = SVS_REPLACE_WITH_QUESTION_MARK);
void StrMakeValidInPlace(std::string &str, StringValidationSettings settings = SVS_REPLACE_WITH_QUESTION_MARK);
[[nodiscard]] std::string StrMakeValid(std::string_view str, StringValidationSettings settings = SVS_REPLACE_WITH_QUESTION_MARK);
[[nodiscard]] inline std::string StrMakeValid(const char *str, StringValidationSettings settings = SVS_REPLACE_WITH_QUESTION_MARK)
{
return StrMakeValid(std::string_view(str), settings);
}
[[nodiscard]] inline std::string StrMakeValid(std::string &&str, StringValidationSettings settings = SVS_REPLACE_WITH_QUESTION_MARK)
{
StrMakeValidInPlace(str, settings);
return std::move(str);
}
bool strtolower(std::string &str, std::string::size_type offs = 0);