summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2013-10-24 22:21:41 +0100
committerMaxime Coste <frrrwww@gmail.com>2013-10-24 22:21:41 +0100
commit748cc79d0f1b0f9ff19f35c2fc056b12414b33b7 (patch)
treed4dfcb755bd9446c1114242150603cc6268cb28d /src
parent4750c92b899da2426c4b206d36fb614fbf4c9da9 (diff)
Add std::hash specialization for std::pair
Diffstat (limited to 'src')
-rw-r--r--src/utils.hh17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/utils.hh b/src/utils.hh
index 4ff1839b..0500b203 100644
--- a/src/utils.hh
+++ b/src/utils.hh
@@ -300,4 +300,21 @@ private:
}
+// std::pair hashing
+namespace std
+{
+
+template<typename T1, typename T2>
+struct hash<std::pair<T1,T2>>
+{
+ size_t operator()(const std::pair<T1,T2>& val) const
+ {
+ size_t seed = std::hash<T2>()(val.second);
+ return seed ^ (std::hash<T1>()(val.first) + 0x9e3779b9 +
+ (seed << 6) + (seed >> 2));
+ }
+};
+
+}
+
#endif // utils_hh_INCLUDED