<boost/unordered/concurrent_node_map.hpp>
Synopsis
Defines boost::concurrent_node_map
and associated functions and alias templates.
namespace boost { namespace unordered { template<class Key, class T, class Hash = boost::hash<Key>, class Pred = std::equal_to<Key>, class Allocator = std::allocator<std::pair<const Key, T>>> class concurrent_node_map; // Equality Comparisons template<class Key, class T, class Hash, class Pred, class Alloc> bool operator==(const concurrent_node_map<Key, T, Hash, Pred, Alloc>& x, const concurrent_node_map<Key, T, Hash, Pred, Alloc>& y); template<class Key, class T, class Hash, class Pred, class Alloc> bool operator!=(const concurrent_node_map<Key, T, Hash, Pred, Alloc>& x, const concurrent_node_map<Key, T, Hash, Pred, Alloc>& y); // swap template<class Key, class T, class Hash, class Pred, class Alloc> void swap(concurrent_node_map<Key, T, Hash, Pred, Alloc>& x, concurrent_node_map<Key, T, Hash, Pred, Alloc>& y) noexcept(noexcept(x.swap(y))); // Erasure template<class K, class T, class H, class P, class A, class Predicate> typename concurrent_node_map<K, T, H, P, A>::size_type erase_if(concurrent_node_map<K, T, H, P, A>& c, Predicate pred); // Pmr aliases (C++17 and up) namespace pmr { template<class Key, class T, class Hash = boost::hash<Key>, class Pred = std::equal_to<Key>> using concurrent_node_map = boost::unordered::concurrent_node_map<Key, T, Hash, Pred, std::pmr::polymorphic_allocator<std::pair<const Key, T>>>; } // namespace pmr } // namespace unordered using unordered::concurrent_node_map; } // namespace boost