32 seed ^= hasher(v) + 0x9e3779b9 + (seed << 6) +
38template <
typename U,
typename V>
39size_t ordered_pair_hash_value(
const U& u,
const V& v)
41 size_t h = std::hash<U>{}(u);
52template <
typename T,
typename Enable =
void>
55 size_t operator()(
const T& k)
const {
return detail::ordered_pair_hash_value(k[0], k[1]); }
58template <
typename U,
typename V>
61 size_t operator()(
const std::pair<U, V>& k)
const
63 return detail::ordered_pair_hash_value(k.first, k.second);
void hash_combine(size_t &seed, const T &v)
Hash an object v and combine it with an existing hash value seed.
Definition: hash.h:29
Main namespace for Lagrange.
Definition: AABBIGL.h:30
Compute an order-dependent hash of a pair of values.
Definition: hash.h:54