This namespace provides efficient algorithms for quickly hashing different types for checking identity with a very low collision probability. More...
Typedefs | |
typedef std::size_t | HashValue |
Functions | |
void | hashCombine (HashValue &) |
Final iteration of the variadic template with no additional arguments. More... | |
template<class T , class... Rest> | |
void | hashCombine (HashValue &seed, const T &value, Rest... rest) |
Variadic template to hashing a combination with finite size see: https://stackoverflow.com/a/38140932. More... | |
template<class Container > | |
HashValue | hashLargeContainer (Container const &container) |
Hash function for sampling 10 points from a large container and hashing see: https://stackoverflow.com/a/37007715. More... | |
HashValue | hashCombine (const libMesh::Point &point) |
Hashing for Point. More... | |
HashValue | hashCombine (Real time, const libMesh::Point &point) |
Hashing for Point and time, useful for Functions. More... | |
This namespace provides efficient algorithms for quickly hashing different types for checking identity with a very low collision probability.
typedef std::size_t hashing::HashValue |
Final iteration of the variadic template with no additional arguments.
Definition at line 28 of file Hashing.h.
Referenced by hashCombine(), hashLargeContainer(), TEST(), and MemoizedFunctionInterface::value().
|
inline |
Variadic template to hashing a combination with finite size see: https://stackoverflow.com/a/38140932.
Definition at line 38 of file Hashing.h.
|
inline |
Hashing for Point.
Definition at line 70 of file Hashing.h.
|
inline |
Hashing for Point and time, useful for Functions.
Definition at line 84 of file Hashing.h.
HashValue hashing::hashLargeContainer | ( | Container const & | container | ) |
Hash function for sampling 10 points from a large container and hashing see: https://stackoverflow.com/a/37007715.
Definition at line 52 of file Hashing.h.
Referenced by TEST().