28 template <
typename T,
typename... Rest>
33 seed ^= hasher(v) + 0x9e3779b9 + (seed << 6) + (seed >> 2);
38 template <
typename T,
typename... Rest>
40 hash_combine(std::size_t & seed,
const std::vector<T> & v, Rest &&... rest)
48 template <
typename T,
typename... Rest>
50 hash_combine(std::size_t & seed,
const std::set<T> & v, Rest &&... rest)
61 template <
typename S,
typename T>
62 struct hash<
std::pair<S, T>>
64 inline size_t operator()(
const std::pair<S, T> & val)
const
void hash_combine(std::size_t &)
Used for hash function specialization for Attribute objects.
size_t operator()(const std::pair< S, T > &val) const
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...