17 #include <unordered_map>
30 bool operator()(
const Key& a,
const Key& b)
const noexcept {
31 return std::lexicographical_compare(std::begin(a), std::end(a), std::begin(b), std::end(b),
32 [](
const char& cha,
const char& chb) {
45 bool operator()(
const Key& a,
const Key& b)
const noexcept {
46 return a.size() == b.size() &&
47 std::equal(std::begin(a), std::end(a), std::begin(b), [](
const char& cha,
const char& chb) {
59 size_t operator()(T __val)
const noexcept {
61 std::transform(std::begin(__val), std::end(__val), std::back_inserter(lc), [](
typename T::value_type ch) {
64 return std::hash<T>()(lc);
68 template <
class Key,
class Value>
69 using caseless_unordered_map = std::unordered_map<Key, Value, CaselessHash<Key>,
CaselessEq<Key>>;
71 template <
class Key,
class Value>
72 using caseless_unordered_multimap = std::unordered_multimap<Key, Value, CaselessHash<Key>,
CaselessEq<Key>>;
74 template <
class Key,
class Value>
75 using caseless_map = std::map<Key, Value, CaselessLess<Key>>;
78 using caseless_set = std::set<Key, CaselessLess<Key>>;
Definition: caseless.hpp:43
Definition: caseless.hpp:57
Provides caseless comparison for STL algorithms.
Definition: caseless.hpp:28
std::string tolower(const std::string &s)
Converts all upper-case letters in a std::string to lower case.
Definition: debug.h:205
bool equal(const std::vector< T, A > &v1, const std::vector< T, A > &v2)
check if vectors contain same values
Definition: debug.h:160
Inference Engine Plugin API namespace.