*: use transparent comparison for std::{map,set} with std::string keys

This avoids many std::string temporaries for lookups.
This commit is contained in:
Max Kellermann
2023-03-12 09:11:45 +01:00
parent 27d3dcf14c
commit 8b77da545d
23 changed files with 34 additions and 34 deletions

View File

@@ -12,13 +12,13 @@ GetMimeTypeBase(std::string_view s) noexcept
return Split(s, ';').first;
}
std::map<std::string, std::string>
std::map<std::string, std::string, std::less<>>
ParseMimeTypeParameters(std::string_view mime_type) noexcept
{
/* discard the first segment (the base MIME type) */
const auto params = Split(mime_type, ';').second;
std::map<std::string, std::string> result;
std::map<std::string, std::string, std::less<>> result;
for (const std::string_view i : IterableSplitString(params, ';')) {
const auto s = Split(Strip(i), '=');
if (!s.first.empty() && s.second.data() != nullptr)