ttg 1.0.0-alpha
Template Task Graph (TTG): flowgraph-based programming model for high-performance distributed-memory algorithms
Loading...
Searching...
No Matches
Classes | Namespaces | Functions | Variables
hash.h File Reference
#include <cstddef>
#include <cstdint>
#include "ttg/util/void.h"
#include "ttg/util/hash/std/pair.h"
Include dependency graph for hash.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ttg::detail::FNVhasher
 byte-wise hasher More...
 
struct  ttg::detail::hash_combine_impl
 combines 2 hash values; implementation based on boost::hash_combine_impl<64> from Boost v1.79.0 More...
 
struct  ttg::meta::has_member_function_hash< T, Enabler >
 
struct  ttg::meta::has_member_function_hash< T, std::void_t< decltype(std::declval< const T & >().hash())> >
 
struct  ttg::overload::hash< T, std::enable_if_t< meta::has_member_function_hash_v< T > > >
 instantiation of hash for types which have member function hash() that returns More...
 
struct  ttg::overload::hash< void, void >
 instantiation of hash for void More...
 
struct  ttg::overload::hash< Void, void >
 instantiation of hash for Void More...
 
struct  ttg::meta::has_ttg_hash_specialization< T, Enabler >
 
struct  ttg::meta::has_ttg_hash_specialization< T, ttg::meta::void_t< decltype(std::declval< ttg::hash< T > >()(std::declval< const T & >()))> >
 

Namespaces

namespace  ttg
 top-level TTG namespace contains runtime-neutral functionality
 
namespace  ttg::detail
 
namespace  ttg::meta
 
namespace  ttg::overload
 place for overloading/instantiating hash and other functionality
 

Functions

template<class T >
void ttg::hash_combine (std::size_t &seed, T const &v)
 

Variables

template<typename T >
constexpr bool ttg::meta::has_member_function_hash_v = has_member_function_hash<T>::value
 
template<typename T >
constexpr bool ttg::meta::has_ttg_hash_specialization_v = has_ttg_hash_specialization<T>::value