common: uuid: Add hash function for UUID

Used when UUID is a key in an unordered_map. The hash is produced by XORing the high and low 64-bits of the UUID together.
This commit is contained in:
Morph 2021-08-06 00:41:55 -04:00
parent e1a92db519
commit d20c5ac720

View File

@ -69,3 +69,14 @@ struct UUID {
static_assert(sizeof(UUID) == 16, "UUID is an invalid size!"); static_assert(sizeof(UUID) == 16, "UUID is an invalid size!");
} // namespace Common } // namespace Common
namespace std {
template <>
struct hash<Common::UUID> {
size_t operator()(const Common::UUID& uuid) const noexcept {
return uuid.uuid[1] ^ uuid.uuid[0];
}
};
} // namespace std