Thrill  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
hash.hpp File Reference
#include <thrill/common/config.hpp>
#include <tlx/define/attribute_fallthrough.hpp>
#include <array>
#include <cassert>
#include <cstdint>
#include <cstdlib>
#include <random>
#include <string>
#include <type_traits>
+ Include dependency graph for hash.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  alias_cast_helper< To, From >
 
struct  HashCrc32Fallback< ValueType >
 
struct  HashDataSwitch< T >
 Hashing helper that decides what is hashed. More...
 
struct  HashDataSwitch< std::string >
 
class  TabulationHashing< size, hash_t, prng_t >
 Tabulation Hashing, see https://en.wikipedia.org/wiki/Tabulation_hashing. More...
 

Namespaces

 thrill
 
 thrill::common
 Contains many common tools and helpers shared by higher layers. See common.
 

Macros

#define THRILL_COMMON_HASH_HEADER
 

Typedefs

template<typename T >
using hash = HashCrc32< T >
 Select a hashing method. More...
 
template<typename T >
using HashCrc32 = HashCrc32Fallback< T >
 
template<typename T >
using HashTabulated = TabulationHashing< sizeof(T)>
 Tabulation hashing. More...
 

Functions

template<typename To , typename From >
To & alias_cast (From &raw_data)
 
template<typename To , typename From >
const To & alias_cast (const From &raw_data)
 
uint32_t crc32_slicing_by_8 (uint32_t crc, const void *data, size_t length)
 
static uint64_t Hash128to64 (const uint64_t upper, const uint64_t lower)
 
static uint32_t Hash64to32 (uint64_t key)
 Returns a uint32_t hash of a uint64_t. More...
 

Macro Definition Documentation

#define THRILL_COMMON_HASH_HEADER

Definition at line 13 of file hash.hpp.