10 template <
typename StringType>
14 hash ^= std::hash<char>{}(
static_cast<char>(std::tolower(
static_cast<unsigned char>(c)))) + 0x9e3779b9 + (hash << 6) + (hash >> 2);
21 template <
typename StringType>
22 bool operator()(
const StringType& lhs,
const StringType& rhs)
const {
23 if (lhs.size() != rhs.size())
return false;
24 for (
size_t i = 0; i < lhs.size(); ++i) {
25 if (std::tolower(
static_cast<unsigned char>(lhs[i])) != std::tolower(
static_cast<unsigned char>(rhs[i]))) {
Definition CaseInsensitive.hpp:7
Definition CaseInsensitive.hpp:20
bool operator()(const StringType &lhs, const StringType &rhs) const
Definition CaseInsensitive.hpp:22
Definition CaseInsensitive.hpp:9
size_t operator()(const StringType &key) const
Definition CaseInsensitive.hpp:11