mirror of
https://github.com/boostorg/container_hash.git
synced 2025-08-03 14:34:39 +02:00
Update integral hashing to use hash_mix
This commit is contained in:
@@ -102,8 +102,8 @@ namespace boost
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
|
||||
seed ^= static_cast<std::size_t>( v >> 32 ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed ^= static_cast<std::size_t>( v ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed = static_cast<std::size_t>( v >> 32 ) + hash_detail::hash_mix( seed );
|
||||
seed = static_cast<std::size_t>( v ) + hash_detail::hash_mix( seed );
|
||||
|
||||
return seed;
|
||||
}
|
||||
@@ -115,10 +115,10 @@ namespace boost
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
|
||||
seed ^= static_cast<std::size_t>( v >> 96 ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed ^= static_cast<std::size_t>( v >> 64 ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed ^= static_cast<std::size_t>( v >> 32 ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed ^= static_cast<std::size_t>( v ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed = static_cast<std::size_t>( v >> 96 ) + hash_detail::hash_mix( seed );
|
||||
seed = static_cast<std::size_t>( v >> 64 ) + hash_detail::hash_mix( seed );
|
||||
seed = static_cast<std::size_t>( v >> 32 ) + hash_detail::hash_mix( seed );
|
||||
seed = static_cast<std::size_t>( v ) + hash_detail::hash_mix( seed );
|
||||
|
||||
return seed;
|
||||
}
|
||||
@@ -130,8 +130,8 @@ namespace boost
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
|
||||
seed ^= static_cast<std::size_t>( v >> 64 ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed ^= static_cast<std::size_t>( v ) + ( seed << 6 ) + ( seed >> 2 );
|
||||
seed = static_cast<std::size_t>( v >> 64 ) + hash_detail::hash_mix( seed );
|
||||
seed = static_cast<std::size_t>( v ) + hash_detail::hash_mix( seed );
|
||||
|
||||
return seed;
|
||||
}
|
||||
|
Reference in New Issue
Block a user