20 #include <boost/functional/hash.hpp>
26 template <
typename T1,
typename T2>
27 struct hash<std::pair<T1, T2> >
32 boost::hash_combine(seed, v.first);
33 boost::hash_combine(seed, v.second);
39 template <
typename T1,
typename T2>
40 struct hash<std::pair< mgx::Vertex<T1>, mgx::Vertex<T2> > >
45 boost::hash_combine(seed, v.first.id());
46 boost::hash_combine(seed, v.second.id());
53 #if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
54 template <>
struct hash<QString>
57 size_t operator()(
const QString &s)
const
59 int hash = 0, strlen = s.length(), i;
63 for (i = 0; i < strlen; i++) {
65 hash = (31 * hash) + (character.unicode());
70 #endif // Qt version < 5.14