Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is an old version of boost. Click here for the latest version's documentation home page.
PrevUpHomeNext

Reference

Reference

For the full specification, see section 6.3 of the C++ Standard Library Technical Report and issue 6.18 of the Library Extension Technical Report Issues List.

Includes all the following headers.

Defines boost::hash, the implementation for built in types and std::string and customisation functions.

namespace boost {
template<typename T> struct hash;
template<typename T> void hash_combine(size_t &, T const &);
template<typename It> std::size_t hash_range(It, It);
template<typename It> void hash_range(std::size_t&, It, It);
std::size_t hash_value(int);
std::size_t hash_value(unsigned int);
std::size_t hash_value(long);
std::size_t hash_value(unsigned long);
std::size_t hash_value(float);
std::size_t hash_value(double);
std::size_t hash_value(long double);
template<typename T> std::size_t hash_value(T* const&);
template<typename T, unsigned N> std::size_t hash_value(T (&val)[N]);
template<typename T, unsigned N> std::size_t hash_value(const T (&val)[N]);
template<typename Ch, typename A> 
std::size_t hash_value(std::basic_string<Ch, std::char_traits<Ch>, A> const&);
}

Hash implementation for std::pair.

namespace boost {
template<typename A, typename B> 
std::size_t hash_value(std::pair<A, B> const &);
}

Hash implementation for std::vector.

namespace boost {
template<typename T, typename A> 
std::size_t hash_value(std::vector<T, A> const &);
}

Hash implementation for std::list.

namespace boost {
template<typename T, typename A> 
std::size_t hash_value(std::list<T, A> const &);
}

Hash implementation for std::deque.

namespace boost {
template<typename T, typename A> 
std::size_t hash_value(std::deque<T, A> const &);
}

Hash implementation for std::set and std::multiset.

namespace boost {
template<typename K, typename C, typename A> 
std::size_t hash_value(std::set<K, C, A> const &);
template<typename K, typename C, typename A> 
std::size_t hash_value(std::multiset<K, C, A> const &);
}

Hash implementation for std::map and std::multimap.

namespace boost {
template<typename K, typename T, typename C, typename A> 
std::size_t hash_value(std::map<K, T, C, A> const &);
template<typename K, typename T, typename C, typename A> 
std::size_t hash_value(std::multimap<K, T, C, A> const &);
}
Copyright 2005 Daniel James

PrevUpHomeNext