From f0e89e973381d7e0d22373a1a4062a9b2ab66188 Mon Sep 17 00:00:00 2001 From: Tor Egge Date: Tue, 12 Mar 2019 12:01:03 +0100 Subject: Use fundamental types for overloading vespalib::hash functor. --- vespalib/src/vespa/vespalib/stllike/hash_fun.h | 38 +++++++++++++++----------- 1 file changed, 22 insertions(+), 16 deletions(-) (limited to 'vespalib') diff --git a/vespalib/src/vespa/vespalib/stllike/hash_fun.h b/vespalib/src/vespa/vespalib/stllike/hash_fun.h index a3401083f95..c5f239f2b4e 100644 --- a/vespalib/src/vespa/vespalib/stllike/hash_fun.h +++ b/vespalib/src/vespa/vespalib/stllike/hash_fun.h @@ -16,30 +16,36 @@ template struct hash { template<> struct hash { size_t operator() (char arg) const { return arg; } }; -template<> struct hash { - size_t operator() (int8_t arg) const { return arg; } +template<> struct hash { + size_t operator() (signed char arg) const { return arg; } }; -template<> struct hash { - size_t operator() (int16_t arg) const { return arg; } +template<> struct hash { + size_t operator() (short arg) const { return arg; } }; -template<> struct hash { - size_t operator() (int32_t arg) const { return arg; } +template<> struct hash { + size_t operator() (int arg) const { return arg; } }; -template<> struct hash { - size_t operator() (int64_t arg) const { return arg; } +template<> struct hash { + size_t operator() (long arg) const { return arg; } +}; +template<> struct hash { + size_t operator() (long long arg) const { return arg; } }; -template<> struct hash { - size_t operator() (uint8_t arg) const { return arg; } +template<> struct hash { + size_t operator() (unsigned char arg) const { return arg; } +}; +template<> struct hash { + size_t operator() (unsigned short arg) const { return arg; } }; -template<> struct hash { - size_t operator() (uint16_t arg) const { return arg; } +template<> struct hash { + size_t operator() (unsigned int arg) const { return arg; } }; -template<> struct hash { - size_t operator() (uint32_t arg) const { return arg; } +template<> struct hash { + size_t operator() (unsigned long arg) const { return arg; } }; -template<> struct hash { - size_t operator() (uint64_t arg) const { return arg; } +template<> struct hash { + size_t operator() (unsigned long long arg) const { return arg; } }; template<> struct hash { -- cgit v1.2.3