diff --git a/doc/hash/recent.adoc b/doc/hash/recent.adoc index ad10ad1..a98411b 100644 --- a/doc/hash/recent.adoc +++ b/doc/hash/recent.adoc @@ -13,6 +13,9 @@ https://www.boost.org/LICENSE_1_0.txt * Added an overload of `hash_value` for `std::nullptr_t`. * Added `is_tuple_like` and an overload of `hash_value` for tuple-like types. +* Changed string hashing to use + https://github.com/pdimov/mulxp_hash[`mulxp1_hash`]. This + improves both quality and speed. == Boost 1.81.0 diff --git a/doc/hash/reference.adoc b/doc/hash/reference.adoc index 4b81516..a8d2889 100644 --- a/doc/hash/reference.adoc +++ b/doc/hash/reference.adoc @@ -242,11 +242,16 @@ for( ; first != last; ++first ) } ---- -Otherwise, bytes from `[first, last)` are coalesced in an unspecified manner -and then passed to `hash_combine`, more than one at a time. This is done in -order to improve performance when hashing strings. +Otherwise, bytes from `[first, last)` are coalesced and hashed in an +unspecified manner. This is done in order to improve performance when hashing +strings. -- +Remarks: :: + For chars, the current implementation uses + https://github.com/pdimov/mulxp_hash[`mulxp1_hash`] when `std::size_t` is + 64 bit, and `mulxp1_hash32` when it's 32 bit. + [source] ---- template std::size_t hash_range( It first, It last );