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