summaryrefslogtreecommitdiff
path: root/core/src/Utils/Hash.hpp
blob: cf7713a564758332a623b60e9950ecfa7e975054 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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