gem5 [DEVELOP-FOR-25.0]
Loading...
Searching...
No Matches
gem5::stl_helpers::hash_impl Namespace Reference

Classes

struct  hash
 
struct  hash< std::pair< T, U > >
 
struct  hash< std::tuple< T... > >
 
struct  hash< T, std::enable_if_t< !is_std_hash_enabled_v< T > &&is_iterable_v< T > > >
 
struct  hash< T, std::enable_if_t< is_std_hash_enabled_v< T > > >
 

Functions

template<typename... T>
constexpr size_t hash_combine (T... hashes)
 
constexpr size_t hash_refine (size_t x)
 
template<typename T>
constexpr auto make_hash_for (const T &)
 
template<typename T>
constexpr auto hash_value (const T &v)
 

Variables

static constexpr uint64_t C = 0xbea225f9eb34556d
 
template<typename, typename = void>
constexpr bool is_hash_enabled = false
 
template<typename T>
constexpr bool is_hash_enabled< T, std::void_t< decltype(hash< T >()(std::declval< T >()))> > = true
 

Function Documentation

◆ hash_combine()

template<typename... T>
size_t gem5::stl_helpers::hash_impl::hash_combine ( T... hashes)
constexpr

◆ hash_refine()

◆ hash_value()

◆ make_hash_for()

template<typename T>
auto gem5::stl_helpers::hash_impl::make_hash_for ( const T & )
constexpr

Definition at line 105 of file hash_helpers.hh.

Referenced by hash_value().

Variable Documentation

◆ C

uint64_t gem5::stl_helpers::hash_impl::C = 0xbea225f9eb34556d
staticconstexpr

Definition at line 62 of file hash_helpers.hh.

Referenced by hash_combine(), and hash_refine().

◆ is_hash_enabled

template<typename, typename = void>
bool gem5::stl_helpers::hash_impl::is_hash_enabled = false
constexpr

Definition at line 159 of file hash_helpers.hh.

◆ is_hash_enabled< T, std::void_t< decltype(hash< T >()(std::declval< T >()))> >

template<typename T>
bool gem5::stl_helpers::hash_impl::is_hash_enabled< T, std::void_t< decltype(hash< T >()(std::declval< T >()))> > = true
constexpr

Definition at line 162 of file hash_helpers.hh.


Generated on Mon May 26 2025 09:19:39 for gem5 by doxygen 1.13.2