]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/phoenix/test/container/container_tests12a.cpp
1 /*=============================================================================
2 Copyright (c) 2004 Angus Leeming
3 Copyright (c) 2017 Kohei Takahashi
5 Distributed under the Boost Software License, Version 1.0. (See accompanying
6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 ==============================================================================*/
8 #include "container_tests.hpp"
9 #include <boost/static_assert.hpp>
11 std::unordered_set
<int> const build_unordered_set()
13 typedef std::unordered_set
<int> int_set
;
14 typedef std::vector
<int> int_vector
;
17 int_vector
const data
= build_vector();
18 int_vector::const_iterator it
= data
.begin();
19 int_vector::const_iterator
const end
= data
.end();
20 result
.insert(it
, end
);
24 std::unordered_multiset
<int> const build_unordered_multiset()
26 typedef std::unordered_set
<int> int_set
;
27 typedef std::unordered_multiset
<int> int_multiset
;
28 int_set
const data
= build_unordered_set();
29 return int_multiset(data
.begin(), data
.end());
32 std::vector
<int> const init_vector()
34 typedef std::vector
<int> int_vector
;
35 int const data
[] = { -4, -3, -2, -1, 0 };
36 int_vector::size_type
const data_size
= sizeof(data
) / sizeof(data
[0]);
37 return int_vector(data
, data
+ data_size
);
40 std::vector
<int> const build_vector()
42 typedef std::vector
<int> int_vector
;
43 static int_vector data
= init_vector();
44 int_vector::size_type
const size
= data
.size();
45 int_vector::iterator it
= data
.begin();
46 int_vector::iterator
const end
= data
.end();
47 for (; it
!= end
; ++it
)
55 BOOST_STATIC_ASSERT((!phx::stl::has_mapped_type
<std::unordered_multiset
<int> >::value
));
56 BOOST_STATIC_ASSERT((phx::stl::has_key_type
<std::unordered_multiset
<int> >::value
));
58 std::unordered_multiset
<int> const data
= build_unordered_multiset();
64 test_get_allocator(data
);
65 return boost::report_errors();