40 #ifndef HASH_HELPER_HPP 41 #define HASH_HELPER_HPP 47 #include <boost/functional/hash/hash.hpp> 53 struct hash<
std::vector<T>> :
public std::unary_function<std::vector<T>, std::size_t>
55 std::size_t operator()(
const std::vector<T>& val)
const 57 return boost::hash_range<typename std::vector<T>::const_iterator>(val.begin(), val.end());
65 template <
typename T,
typename U>
66 struct hash<
std::pair<T, U>> :
public std::unary_function<std::pair<T, U>, std::size_t>
68 std::size_t operator()(
const std::pair<T, U>& val)
const 70 size_t hash_value = 0;
71 boost::hash_combine(hash_value, val.first);
72 boost::hash_combine(hash_value, val.second);
Definition of hash function for EdgeDescriptor.
redefinition of set to manage ordered/unordered structures