Document switch to mulxp1_hash

This commit is contained in:
Peter Dimov
2023-02-15 20:44:10 +02:00
parent 9ae5790657
commit 7c49f0bfb1
2 changed files with 11 additions and 3 deletions

View File

@@ -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

View File

@@ -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<class It> std::size_t hash_range( It first, It last );