| 40 | { |
| 41 | template <class T, class H, class P, class A> |
| 42 | class unordered_set |
| 43 | { |
| 44 | #if defined(BOOST_UNORDERED_USE_MOVE) |
| 45 | BOOST_COPYABLE_AND_MOVABLE(unordered_set) |
| 46 | #endif |
| 47 | public: |
| 48 | |
| 49 | typedef T key_type; |
| 50 | typedef T value_type; |
| 51 | typedef H hasher; |
| 52 | typedef P key_equal; |
| 53 | typedef A allocator_type; |
| 54 | |
| 55 | private: |
| 56 | |
| 57 | typedef boost::unordered::detail::set<A, T, H, P> types; |
| 58 | typedef typename types::traits allocator_traits; |
| 59 | typedef typename types::table table; |
| 60 | |
| 61 | public: |
| 62 | |
| 63 | typedef typename allocator_traits::pointer pointer; |
| 64 | typedef typename allocator_traits::const_pointer const_pointer; |
| 65 | |
| 66 | typedef value_type& reference; |
| 67 | typedef value_type const& const_reference; |
| 68 | |
| 69 | typedef std::size_t size_type; |
| 70 | typedef std::ptrdiff_t difference_type; |
| 71 | |
| 72 | typedef typename table::cl_iterator const_local_iterator; |
| 73 | typedef typename table::cl_iterator local_iterator; |
| 74 | typedef typename table::c_iterator const_iterator; |
| 75 | typedef typename table::c_iterator iterator; |
| 76 | |
| 77 | private: |
| 78 | |
| 79 | table table_; |
| 80 | |
| 81 | public: |
| 82 | |
| 83 | // constructors |
| 84 | |
| 85 | explicit unordered_set( |
| 86 | size_type = boost::unordered::detail::default_bucket_count, |
| 87 | const hasher& = hasher(), |
| 88 | const key_equal& = key_equal(), |
| 89 | const allocator_type& = allocator_type()); |
| 90 | |
| 91 | explicit unordered_set(allocator_type const&); |
| 92 | |
| 93 | template <class InputIt> |
| 94 | unordered_set(InputIt, InputIt); |
| 95 | |
| 96 | template <class InputIt> |
| 97 | unordered_set( |
| 98 | InputIt, InputIt, |
| 99 | size_type, |
nothing calls this directly
no test coverage detected