gem5 v25.0.0.1
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 Sat Oct 18 2025 08:07:04 for gem5 by doxygen 1.14.0