aether::hash::hasher Struct Reference

#include <hash.hh>

Classes

struct  constants
 
struct  constants< uint32_t >
 
struct  constants< uint64_t >
 

Public Member Functions

template<typename T , std::enable_if_t< std::is_integral< T >::value && std::is_fundamental< T >::value, int > = 0>
void operator() (const T &v)
 
template<typename T , std::enable_if_t< !std::is_integral< T >::value|| !std::is_fundamental< T >::value, int > = 0>
void operator() (const T &v)
 
template<typename T1 , typename T2 >
void operator() (const std::pair< T1, T2 > &pair)
 
size_t get_value () const
 

Static Public Member Functions

static constexpr size_t get_basis ()
 
static constexpr size_t get_prime ()
 

Public Attributes

size_t value = get_basis()
 

Member Function Documentation

static constexpr size_t aether::hash::hasher::get_basis ( )
inlinestatic
static constexpr size_t aether::hash::hasher::get_prime ( )
inlinestatic
size_t aether::hash::hasher::get_value ( ) const
inline
template<typename T , std::enable_if_t< std::is_integral< T >::value && std::is_fundamental< T >::value, int > = 0>
void aether::hash::hasher::operator() ( const T &  v)
inline
template<typename T , std::enable_if_t< !std::is_integral< T >::value|| !std::is_fundamental< T >::value, int > = 0>
void aether::hash::hasher::operator() ( const T &  v)
inline
template<typename T1 , typename T2 >
void aether::hash::hasher::operator() ( const std::pair< T1, T2 > &  pair)
inline

Member Data Documentation

size_t aether::hash::hasher::value = get_basis()