Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
HashStandardToBoostBridge_test Class Reference

Description

Test:
document and verify an automatic bridge to integrate boost-style hash functions with the new std::hash template. Currently (as of 2014) this requires us to "hijack" the standard library definition to defeat a static assertion, which otherwise would defeat any attempts based on SFINAE

This test builds two custom types, one with a std::hash compliant hash function extension point, the other one with a boost::hash style custom hash function, to be picked up by ADL. By virtue of the automatic bridging template, we're able to use the boost-style definition at places where the std::hash is expected – most notably in STL hashtable containers.

See also
hash-standard.hpp
lib::HashIndexed

Definition at line 134 of file hash-standard-to-boost-bridge-test.cpp.

Private Member Functions

virtual void run (Arg)
 
void checkHashFunctionInvocation ()
 
void checkHashtableUsage ()
 

Member Function Documentation

◆ run()

virtual void run ( Arg  )
inlineprivatevirtual

Definition at line 138 of file hash-standard-to-boost-bridge-test.cpp.

References HashStandardToBoostBridge_test::checkHashFunctionInvocation(), and HashStandardToBoostBridge_test::checkHashtableUsage().

+ Here is the call graph for this function:

◆ checkHashFunctionInvocation()

void checkHashFunctionInvocation ( )
inlineprivate

Definition at line 146 of file hash-standard-to-boost-bridge-test.cpp.

Referenced by HashStandardToBoostBridge_test::run().

+ Here is the caller graph for this function:

◆ checkHashtableUsage()

void checkHashtableUsage ( )
inlineprivate

Definition at line 191 of file hash-standard-to-boost-bridge-test.cpp.

References lib::test::randStr().

Referenced by HashStandardToBoostBridge_test::run().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:
+ Inheritance diagram for HashStandardToBoostBridge_test:
+ Collaboration diagram for HashStandardToBoostBridge_test:

The documentation for this class was generated from the following file: