libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
hash.cpp File Reference
#include "stdafx.h"
#include <boost/test/included/unit_test.hpp>
#include "core/hash.hpp"
#include "core/stats_output.hpp"
#include <algorithm>
#include <iostream>
#include <iterator>
#include <vector>
#include "core/ave_deviation_meter.hpp"
#include "absl/hash/hash.h"
#include "src/include/robin_hood.h"
#include <boost/functional/hash.hpp>
#include <array>
#include <chrono>
Include dependency graph for hash.cpp:

Go to the source code of this file.

Classes

struct  abseil_t
 
struct  robin_hood_t
 

Macros

#define BOOST_TEST_MODULE   libjmmcg_tests
 

Typedefs

using murmur2_t = hashers::murmur2< std::string >
 
using hsieh_t = hashers::hsieh< std::string >
 
using hsieh_mpl_t = hashers::mpl::hsieh< std::string, 36 >
 
using hashes_t = std::vector< murmur2_t::result_type >
 
using timed_results_t = ave_deviation_meter< unsigned long long >
 

Functions

template<class H >
void __fastcall hashem (std::ostream &, std::vector< typename H::result_type > &hashes)
 
template<class H >
void __fastcall do_hashing (std::ostream &os, const int num_hashes)
 
 BOOST_AUTO_TEST_CASE (create_murmur2)
 
 BOOST_AUTO_TEST_CASE (create_hsieh)
 
 BOOST_AUTO_TEST_CASE (create_hsieh_mpl)
 
 BOOST_AUTO_TEST_CASE (hash_murmur2)
 
 BOOST_AUTO_TEST_CASE (hash_hsieh)
 
 BOOST_AUTO_TEST_CASE (hash_hsieh_mpl)
 
 BOOST_AUTO_TEST_CASE (time_hashes)
 

Variables

const std::array guids
 

Macro Definition Documentation

◆ BOOST_TEST_MODULE

#define BOOST_TEST_MODULE   libjmmcg_tests

Definition at line 21 of file hash.cpp.

Typedef Documentation

◆ hashes_t

typedef std::vector< murmur2_t::result_type > hashes_t

Definition at line 76 of file hash.cpp.

◆ hsieh_mpl_t

typedef hashers::mpl::hsieh< std::string, 36 > hsieh_mpl_t

Definition at line 75 of file hash.cpp.

◆ hsieh_t

typedef hashers::hsieh< std::string > hsieh_t

Definition at line 74 of file hash.cpp.

◆ murmur2_t

typedef hashers::murmur2< std::string > murmur2_t

Definition at line 73 of file hash.cpp.

◆ timed_results_t

using timed_results_t = ave_deviation_meter<unsigned long long>

Definition at line 77 of file hash.cpp.

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/7]

BOOST_AUTO_TEST_CASE ( create_hsieh  )

Definition at line 126 of file hash.cpp.

◆ BOOST_AUTO_TEST_CASE() [2/7]

BOOST_AUTO_TEST_CASE ( create_hsieh_mpl  )

Definition at line 130 of file hash.cpp.

◆ BOOST_AUTO_TEST_CASE() [3/7]

BOOST_AUTO_TEST_CASE ( create_murmur2  )

Definition at line 122 of file hash.cpp.

◆ BOOST_AUTO_TEST_CASE() [4/7]

BOOST_AUTO_TEST_CASE ( hash_hsieh  )

Definition at line 139 of file hash.cpp.

◆ BOOST_AUTO_TEST_CASE() [5/7]

BOOST_AUTO_TEST_CASE ( hash_hsieh_mpl  )

Definition at line 144 of file hash.cpp.

◆ BOOST_AUTO_TEST_CASE() [6/7]

BOOST_AUTO_TEST_CASE ( hash_murmur2  )

Definition at line 134 of file hash.cpp.

◆ BOOST_AUTO_TEST_CASE() [7/7]

BOOST_AUTO_TEST_CASE ( time_hashes  )

\xrefitem test 27. \xrefitem test 177.

Definition at line 168 of file hash.cpp.

◆ do_hashing()

template<class H >
void __fastcall do_hashing ( std::ostream &  os,
const int  num_hashes 
)

Definition at line 94 of file hash.cpp.

◆ hashem()

template<class H >
void __fastcall hashem ( std::ostream &  ,
std::vector< typename H::result_type > &  hashes 
)

Definition at line 80 of file hash.cpp.

Variable Documentation

◆ guids

const std::array guids
Initial value:
{
"FA6AF2C3-5957-48CE-A45D-338A71CA5CC1",
"D3DA1A9B-DC2A-47A0-9812-A5071CACD4E8",
"2B482B48-69C4-469F-9DB2-FF79DED69CFE",
"8DA78ED6-8FE2-4C96-A0A7-FF6DB0CEFCFD",
"5CA0C6D0-4516-4C26-9C8D-EF159C83CC66",
"7B519D94-89C3-4E5C-B3D4-0DE31545CA84",
"31652501-0B76-4BFA-B973-8ABC0C95578B",
"AC8DDD15-E763-41F0-A111-4100F80DF5BF",
"142F635A-6DAA-4F5C-9CD2-93379779FD67",
"9609C637-E667-4307-9B16-D20483E6D4DB",
"7CA9EA22-D056-4C2B-8C4F-681B4A4AF0FA",
"F1DCA9C9-E1AF-4844-A52F-97B5356876E8",
"F025908C-9DD6-424A-85A5-1DF65B1973FC",
"884C6532-4A3E-4BAE-9D84-7827DEF2B6F1",
"C876839F-9EFA-484E-85F8-10D2D67A9738",
"3D85A56A-1177-486D-80D3-9A26A47B8905"
}

Definition at line 45 of file hash.cpp.