2
3
4
5
6
7
8
11#ifndef _MSTD_HASH_HPP_
12 #define _MSTD_HASH_HPP_
14 #include <mstd/config.hpp>
17_MSTD_WARNING(
"this is only available for c++17 and greater!");
20 #include <mstd/types.hpp>
23 template<
class T,
class... Ts>
24 inline void hash_append(size_t& hashValue,
const T& value,
const Ts&... values) {
34 template<
class T0,
class T1,
class... Ts>
35 inline size_t
hash_combine(
const T0& value0,
const T1& value1,
const Ts&... values) {
42 inline void hash_range(size_t& seed,
const Iter& begin,
const Iter& end) {
#define _MSTD_HAS_CXX17
Definition config.hpp:45
#define _MSTD_CONSTEXPR17
Definition config.hpp:76
Definition arithmetic_types.hpp:23
void hash_range(size_t &seed, const Iter &begin, const Iter &end)
Definition hash.hpp:42
size_t hash_combine(const T0 &value0, const T1 &value1, const Ts &... values)
Definition hash.hpp:35
void hash_append(size_t &hashValue, const T &value, const Ts &... values)
Definition hash.hpp:24