diff --git a/AK/Traits.h b/AK/Traits.h index e3b7c1ac66a..281c174af1c 100644 --- a/AK/Traits.h +++ b/AK/Traits.h @@ -48,6 +48,24 @@ struct Traits : public GenericTraits { static unsigned hash(int i) { return int_hash(i); } }; +template<> +struct Traits : public GenericTraits { + static constexpr bool is_trivial() { return true; } + static unsigned hash(char c) { return int_hash(c); } +}; + +template<> +struct Traits : public GenericTraits { + static constexpr bool is_trivial() { return true; } + static unsigned hash(i16 i) { return int_hash(i); } +}; + +template<> +struct Traits : public GenericTraits { + static constexpr bool is_trivial() { return true; } + static unsigned hash(i64 i) { return u64_hash(i); } +}; + template<> struct Traits : public GenericTraits { static constexpr bool is_trivial() { return true; } @@ -72,12 +90,6 @@ struct Traits : public GenericTraits { static unsigned hash(u64 u) { return u64_hash(u); } }; -template<> -struct Traits : public GenericTraits { - static constexpr bool is_trivial() { return true; } - static unsigned hash(char c) { return int_hash(c); } -}; - template struct Traits : public GenericTraits { static unsigned hash(const T* p)