namespace unordered { template <class K, class T, class H = boost::hash<K>, class P = std::equal_to<K>, class A = std::allocator<std::pair<const K, T> > > class unordered_map; template <class K, class T, class H, class P, class A> inline bool operator==( unordered_map<K, T, H, P, A> const&, unordered_map<K, T, H, P, A> const&); template <class K, class T, class H, class P, class A> inline bool operator!=( unordered_map<K, T, H, P, A> const&, unordered_map<K, T, H, P, A> const&); template <class K, class T, class H, class P, class A> inline void swap( unordered_map<K, T, H, P, A>& m1, unordered_map<K, T, H, P, A>& m2) BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(m1.swap(m2))); template <class K, class T, class H = boost::hash<K>, class P = std::equal_to<K>, class A = std::allocator<std::pair<const K, T> > > class unordered_multimap; template <class K, class T, class H, class P, class A> inline bool operator==(unordered_multimap<K, T, H, P, A> const&, unordered_multimap<K, T, H, P, A> const&); template <class K, class T, class H, class P, class A> inline bool operator!=(unordered_multimap<K, T, H, P, A> const&, unordered_multimap<K, T, H, P, A> const&); template <class K, class T, class H, class P, class A> inline void swap(unordered_multimap<K, T, H, P, A>& m1, unordered_multimap<K, T, H, P, A>& m2)
glenjofe at gmail dot com Distributed under the Boost Software License, Version 1.0. http://boost.org/LICENSE_1_0.txt */ #ifndef BOOST_ALIGN_ALIGNED_DELETE_HPP #define BOOST_ALIGN_ALIGNED_DELETE_HPP #include <boost/config.hpp> #include <boost/align/aligned_alloc.hpp> #include <boost/align/aligned_delete_forward.hpp> namespace boost { namespace alignment { class aligned_delete { public: template<class T> void operator()(T* ptr) const BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(ptr->~T())) { if (ptr) { ptr->~T(); alignment::aligned_free(ptr); } } }; } } #endif