Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:53:26

0001 
0002 // Copyright (C) 2008-2011 Daniel James.
0003 // Copyright (C) 2022 Christian Mazakas
0004 // Distributed under the Boost Software License, Version 1.0. (See accompanying
0005 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0006 
0007 #ifndef BOOST_UNORDERED_SET_FWD_HPP_INCLUDED
0008 #define BOOST_UNORDERED_SET_FWD_HPP_INCLUDED
0009 
0010 #include <boost/config.hpp>
0011 #if defined(BOOST_HAS_PRAGMA_ONCE)
0012 #pragma once
0013 #endif
0014 
0015 #include <boost/container_hash/hash_fwd.hpp>
0016 #include <functional>
0017 #include <memory>
0018 
0019 namespace boost {
0020   namespace unordered {
0021     template <class T, class H = boost::hash<T>, class P = std::equal_to<T>,
0022       class A = std::allocator<T> >
0023     class unordered_set;
0024 
0025     template <class T, class H, class P, class A>
0026     inline bool operator==(
0027       unordered_set<T, H, P, A> const&, unordered_set<T, H, P, A> const&);
0028     template <class T, class H, class P, class A>
0029     inline bool operator!=(
0030       unordered_set<T, H, P, A> const&, unordered_set<T, H, P, A> const&);
0031     template <class T, class H, class P, class A>
0032     inline void swap(unordered_set<T, H, P, A>& m1,
0033       unordered_set<T, H, P, A>& m2) noexcept(noexcept(m1.swap(m2)));
0034 
0035     template <class K, class H, class P, class A, class Predicate>
0036     typename unordered_set<K, H, P, A>::size_type erase_if(
0037       unordered_set<K, H, P, A>& c, Predicate pred);
0038 
0039     template <class T, class H = boost::hash<T>, class P = std::equal_to<T>,
0040       class A = std::allocator<T> >
0041     class unordered_multiset;
0042 
0043     template <class T, class H, class P, class A>
0044     inline bool operator==(unordered_multiset<T, H, P, A> const&,
0045       unordered_multiset<T, H, P, A> const&);
0046     template <class T, class H, class P, class A>
0047     inline bool operator!=(unordered_multiset<T, H, P, A> const&,
0048       unordered_multiset<T, H, P, A> const&);
0049     template <class T, class H, class P, class A>
0050     inline void swap(unordered_multiset<T, H, P, A>& m1,
0051       unordered_multiset<T, H, P, A>& m2) noexcept(noexcept(m1.swap(m2)));
0052 
0053     template <class K, class H, class P, class A, class Predicate>
0054     typename unordered_multiset<K, H, P, A>::size_type erase_if(
0055       unordered_multiset<K, H, P, A>& c, Predicate pred);
0056 
0057     template <class N, class T, class A> class node_handle_set;
0058     template <class Iter, class NodeType> struct insert_return_type_set;
0059   } // namespace unordered
0060 
0061   using boost::unordered::unordered_multiset;
0062   using boost::unordered::unordered_set;
0063 } // namespace boost
0064 
0065 #endif