| 11 | */ |
| 12 | |
| 13 | static constexpr ui8 IntHashImpl(ui8 key8) noexcept { |
| 14 | size_t key = key8; |
| 15 | |
| 16 | key += ~(key << 15); |
| 17 | key ^= (key >> 10); |
| 18 | key += (key << 3); |
| 19 | key ^= (key >> 6); |
| 20 | key += ~(key << 11); |
| 21 | key ^= (key >> 16); |
| 22 | |
| 23 | return static_cast<ui8>(key); |
| 24 | } |
| 25 | |
| 26 | static constexpr ui16 IntHashImpl(ui16 key16) noexcept { |
| 27 | size_t key = key16; |