aboutsummaryrefslogtreecommitdiff
path: root/app/source/Cplt/Utils/Hash.hpp
blob: de8e63b47ced6c45cee5705cad1d9fdc47483e69 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#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