Nektar++
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Nektar::HashOp Struct Reference

#include <HashUtils.hpp>

Public Member Functions

template<typename T >
std::size_t operator() (const T &t) const
 
template<typename T1 , typename T2 >
std::size_t operator() (const std::pair< T1, T2 > &p) const
 
template<typename... T>
std::size_t operator() (const std::tuple< T... > &tup) const
 
template<typename... T, size_t... I>
std::size_t operator() (const std::tuple< T... > &tup, std::index_sequence< I... >) const
 

Detailed Description

Definition at line 80 of file HashUtils.hpp.

Member Function Documentation

◆ operator()() [1/4]

template<typename T1 , typename T2 >
std::size_t Nektar::HashOp::operator() ( const std::pair< T1, T2 > &  p) const
inline

Definition at line 88 of file HashUtils.hpp.

89 {
90 return hash_combine(p.first, p.second);
91 }
std::vector< double > p(NPUPPER)
void hash_combine(std::size_t &seed)
Definition HashUtils.hpp:44

References Nektar::hash_combine().

◆ operator()() [2/4]

template<typename... T>
std::size_t Nektar::HashOp::operator() ( const std::tuple< T... > &  tup) const
inline

Definition at line 94 of file HashUtils.hpp.

95 {
96 return operator()(tup, std::make_index_sequence<sizeof...(T)>());
97 }
std::size_t operator()(const T &t) const
Definition HashUtils.hpp:82

References operator()().

◆ operator()() [3/4]

template<typename... T, size_t... I>
std::size_t Nektar::HashOp::operator() ( const std::tuple< T... > &  tup,
std::index_sequence< I... >   
) const
inline

Definition at line 100 of file HashUtils.hpp.

102 {
103 return hash_combine(std::get<I>(tup)...);
104 }

References Nektar::hash_combine().

◆ operator()() [4/4]

template<typename T >
std::size_t Nektar::HashOp::operator() ( const T &  t) const
inline

Definition at line 82 of file HashUtils.hpp.

83 {
84 return std::hash<T>{}(t);
85 }

Referenced by operator()().