diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-06-28 16:26:51 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-06-28 16:28:32 +0000 |
commit | 0a8da9a66bdb17d7299238f7936d5170f99a9617 (patch) | |
tree | 774490492a2dbaded7deea7ea03e5c470d72e6ac /vespalib | |
parent | 28863e5e37882c33f4127cd1ef83204584149766 (diff) |
Avoid strlen when you already know ths length of the string.
Diffstat (limited to 'vespalib')
-rw-r--r-- | vespalib/src/vespa/vespalib/stllike/hash_fun.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/vespalib/src/vespa/vespalib/stllike/hash_fun.h b/vespalib/src/vespa/vespalib/stllike/hash_fun.h index 4900fcd5a2b..daedddbba1b 100644 --- a/vespalib/src/vespa/vespalib/stllike/hash_fun.h +++ b/vespalib/src/vespa/vespalib/stllike/hash_fun.h @@ -69,10 +69,10 @@ size_t hashValue(const char *str) noexcept; size_t hashValue(const void *str, size_t sz) noexcept; struct hash_strings { - size_t operator() (const vespalib::string & arg) const noexcept { return hashValue(arg.c_str()); } + size_t operator() (const vespalib::string & arg) const noexcept { return hashValue(arg.data(), arg.size()); } size_t operator() (vespalib::stringref arg) const noexcept { return hashValue(arg.data(), arg.size()); } size_t operator() (const char * arg) const noexcept { return hashValue(arg); } - size_t operator() (const std::string& arg) const noexcept { return hashValue(arg.c_str()); } + size_t operator() (const std::string& arg) const noexcept { return hashValue(arg.data(), arg.size()); } }; template<> struct hash<const char *> : hash_strings { }; |