|
Clingo
|
Generic functions for equality comparison and hash computation. More...
Classes | |
| struct | CppClingo::Util::value_hasher |
| Compute a hash using std::hash. More... | |
| struct | CppClingo::Util::value_equal_to |
| Helper class to compare pointers and some STL containers holding pointers by value. More... | |
| class | CppClingo::Util::array_hash |
| Hasher for arrays of dynamic but fixed size. More... | |
| struct | CppClingo::Util::array_equal_to |
| Comparison operator for arrays of dynamic but fixed size. More... | |
Functions | |
| auto | CppClingo::Util::hash_mix (size_t h) -> size_t |
| Perturb the given seed. | |
| template<class... T> | |
| auto | CppClingo::Util::hash_combine (T... a) -> size_t |
| Combine the given hashes. | |
| auto | CppClingo::Util::value_hash (std::type_info const &x) -> size_t |
| Compute a hash for type_info. | |
| template<class T > | |
| auto | CppClingo::Util::value_hash (T const &x) -> size_t |
| Compute a hash using std::hash. | |
| template<class T > | |
| auto | CppClingo::Util::value_hash (T *x) -> size_t |
| Compute hash for pointers. | |
| template<class T > | |
| auto | CppClingo::Util::value_hash (std::optional< T > const &x) -> size_t |
| Compute hash for optionals. | |
| template<class T > | |
| auto | CppClingo::Util::value_hash (std::reference_wrapper< T > const &x) -> size_t |
| Compute hash for reference_wrapper. | |
| template<class T , class D > | |
| auto | CppClingo::Util::value_hash (std::unique_ptr< T, D > const &x) -> size_t |
| Compute hash for unique_ptr. | |
| template<class T > | |
| auto | CppClingo::Util::value_hash (immutable_value< T > const &x) -> size_t |
| Compute hash for immutable_value. | |
| template<class T , class U > | |
| auto | CppClingo::Util::value_hash (std::pair< T, U > const &x) -> size_t |
| Compute the hash of a pair. | |
| template<class... T> | |
| auto | CppClingo::Util::value_hash (std::tuple< T... > const &x) -> size_t |
| Compute the hash of a tuple. | |
| template<class... T> | |
| auto | CppClingo::Util::value_hash (std::variant< T... > const &x) -> size_t |
| Compute the hash of a variant. | |
| template<class T , size_t E> | |
| auto | CppClingo::Util::value_hash (std::span< T, E > const &x) -> size_t |
| Compute the hash of a span. | |
| template<class T , class A > | |
| auto | CppClingo::Util::value_hash (std::vector< T, A > const &x) -> size_t |
| Compute the hash of a vector. | |
| template<class T > | |
| auto | CppClingo::Util::value_hash (Util::immutable_array< T > const &x) -> size_t |
| Compute the hash of an immutable array. | |
| template<class T , size_t N> | |
| auto | CppClingo::Util::value_hash (Util::small_vector< T, N > const &x) -> size_t |
| Compute the hash of an immutable array. | |
| auto | CppClingo::Util::value_hash (char const *x) -> size_t |
| Compute the hash of a string. | |
| auto | CppClingo::Util::value_hash (std::string_view const &x) -> size_t |
| Compute the hash of a string. | |
| auto | CppClingo::Util::value_hash (std::string const &x) -> size_t |
| Compute the hash of a string. | |
| template<class T > | |
| auto | CppClingo::Util::value_hash_range (T const &x) -> size_t |
| Compute the hash for a given range of elements. | |
| template<class T , class... Args> | |
| auto | CppClingo::Util::value_hash_record (Args const &...x) -> size_t |
| Compute and combine the hashes of the given arguments. | |
Generic functions for equality comparison and hash computation.