diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-06-29 10:30:50 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-29 10:30:50 +0200 |
commit | 676eda6e9914067da5dd26c9dc19e5ee34622c59 (patch) | |
tree | 5d04836745510778746f14da29dd14d51434871b | |
parent | 1dff254213b5977d1196e0160de82a582a623a72 (diff) | |
parent | 8287b37e94bd2357871a7dabea9724efd88fa827 (diff) |
Merge pull request #23266 from vespa-engine/balder/avoid-strlen
Avoid strlen when you already know ths length of the string.
-rw-r--r-- | searchlib/src/vespa/searchlib/fef/objectstore.cpp | 4 | ||||
-rw-r--r-- | vespalib/src/vespa/vespalib/stllike/hash_fun.h | 4 |
2 files changed, 3 insertions, 5 deletions
diff --git a/searchlib/src/vespa/searchlib/fef/objectstore.cpp b/searchlib/src/vespa/searchlib/fef/objectstore.cpp index 2da08e2915d..4cf185ad55e 100644 --- a/searchlib/src/vespa/searchlib/fef/objectstore.cpp +++ b/searchlib/src/vespa/searchlib/fef/objectstore.cpp @@ -2,8 +2,7 @@ #include "objectstore.h" #include <vespa/vespalib/stllike/hash_map.hpp> -namespace search { -namespace fef { +namespace search::fef { ObjectStore::ObjectStore() : _objectMap() @@ -37,4 +36,3 @@ ObjectStore::get(const vespalib::string & key) const } } -} 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 { }; |