forked from Imagelibrary/binutils-gdb
gdbsupport: add gdb::string_view_hash
Add the string_view_hash type, which will be useful to be able to use gdb::string_view as std::unordered_map keys. Use it in gdb/symtab.c, to exercise it. Change-Id: Id69a466ab19a9f6620b5df8a2dd29b5cddd94c00 Approved-By: Andrew Burgess <aburgess@redhat.com>
This commit is contained in:
committed by
Simon Marchi
parent
72127b193c
commit
1a8605a8c7
@@ -209,4 +209,21 @@ fast_hash (const void *ptr, size_t len, unsigned int start_value = 0)
|
||||
#endif
|
||||
}
|
||||
|
||||
namespace gdb
|
||||
{
|
||||
|
||||
/* Hash type for gdb::string_view.
|
||||
|
||||
Even after we switch to C++17 and dump our string_view implementation, we
|
||||
might want to keep this hash implementation if it's faster than std::hash
|
||||
for std::string_view. */
|
||||
|
||||
struct string_view_hash
|
||||
{
|
||||
std::size_t operator() (gdb::string_view view) const
|
||||
{ return fast_hash (view.data (), view.length ()); }
|
||||
};
|
||||
|
||||
} /* namespace gdb */
|
||||
|
||||
#endif /* COMMON_COMMON_UTILS_H */
|
||||
|
||||
Reference in New Issue
Block a user