<boost/unordered/unordered_set.hpp> Synopsis
Defines boost::unordered_set,
boost::unordered_multiset
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 unordered_set;
// Equality Comparisons
template<class Key, class Hash, class Pred, class Alloc>
bool operator==(const unordered_set<Key, Hash, Pred, Alloc>& x,
const unordered_set<Key, Hash, Pred, Alloc>& y);
template<class Key, class Hash, class Pred, class Alloc>
bool operator!=(const unordered_set<Key, Hash, Pred, Alloc>& x,
const unordered_set<Key, Hash, Pred, Alloc>& y);
// swap
template<class Key, class Hash, class Pred, class Alloc>
void swap(unordered_set<Key, Hash, Pred, Alloc>& x,
unordered_set<Key, Hash, Pred, Alloc>& y)
noexcept(noexcept(x.swap(y)));
// Erasure
template<class K, class H, class P, class A, class Predicate>
typename unordered_set<K, H, P, A>::size_type
erase_if(unordered_set<K, H, P, A>& c, Predicate pred);
template<class Key,
class Hash = boost::hash<Key>,
class Pred = std::equal_to<Key>,
class Allocator = std::allocator<Key>>
class unordered_multiset;
// Equality Comparisons
template<class Key, class Hash, class Pred, class Alloc>
bool operator==(const unordered_multiset<Key, Hash, Pred, Alloc>& x,
const unordered_multiset<Key, Hash, Pred, Alloc>& y);
template<class Key, class Hash, class Pred, class Alloc>
bool operator!=(const unordered_multiset<Key, Hash, Pred, Alloc>& x,
const unordered_multiset<Key, Hash, Pred, Alloc>& y);
// swap
template<class Key, class Hash, class Pred, class Alloc>
void swap(unordered_multiset<Key, Hash, Pred, Alloc>& x,
unordered_multiset<Key, Hash, Pred, Alloc>& y)
noexcept(noexcept(x.swap(y)));
// Erasure
template<class K, class H, class P, class A, class Predicate>
typename unordered_multiset<K, H, P, A>::size_type
erase_if(unordered_multiset<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 unordered_set =
boost::unordered::unordered_set<Key, Hash, Pred,
std::pmr::polymorphic_allocator<Key>>;
template<class Key,
class Hash = boost::hash<Key>,
class Pred = std::equal_to<Key>>
using unordered_multiset =
boost::unordered::unordered_multiset<Key, Hash, Pred,
std::pmr::polymorphic_allocator<Key>>;
} // namespace pmr
} // namespace unordered
using unordered::unordered_set;
using unordered::unordered_multiset;
} // namespace boost