aboutsummaryrefslogtreecommitdiff
path: root/app/source/Cplt/Utils/Hash.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'app/source/Cplt/Utils/Hash.hpp')
-rw-r--r--app/source/Cplt/Utils/Hash.hpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/app/source/Cplt/Utils/Hash.hpp b/app/source/Cplt/Utils/Hash.hpp
new file mode 100644
index 0000000..cf7713a
--- /dev/null
+++ b/app/source/Cplt/Utils/Hash.hpp
@@ -0,0 +1,15 @@
+#pragma once
+
+#include <cstddef>
+#include <functional>
+
+namespace HashUtils {
+
+template <class T>
+void Combine(size_t& seed, const T& v)
+{
+ std::hash<T> hasher;
+ seed ^= hasher(v) + 0x9e3779b9 + (seed << 6) + (seed >> 2);
+}
+
+} // namespace HashUtils