| 214 | |
| 215 | template <typename T> |
| 216 | static std::size_t hash(const T &val) |
| 217 | { |
| 218 | using type = typename hash_enum_resolver<T, std::is_enum<T>::value>::type; |
| 219 | return type::hash(val); |
| 220 | } |
| 221 | |
| 222 | template <typename T> |
| 223 | static void detach(T &val) |