]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/phoenix/test/container/container_tests3b.cpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / phoenix / test / container / container_tests3b.cpp
CommitLineData
7c673cae
FG
1/*=============================================================================
2 Copyright (c) 2004 Angus Leeming
3
4 Distributed under the Boost Software License, Version 1.0. (See accompanying
5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6==============================================================================*/
7#include "container_tests.hpp"
8#include <boost/static_assert.hpp>
9
10std::map<int, int> const build_map()
11{
12 typedef std::map<int, int> int_map;
13 typedef std::vector<int> int_vector;
14
15 int_map result;
16 int_vector const data = build_vector();
17 int_vector::const_iterator it = data.begin();
18 int_vector::const_iterator const end = data.end();
19 for (; it != end; ++it) {
20 int const value = *it;
21 result[value] = 100 * value;
22 }
23 return result;
24}
25
26std::vector<int> const init_vector()
27{
28 typedef std::vector<int> int_vector;
29 int const data[] = { -4, -3, -2, -1, 0 };
30 int_vector::size_type const data_size = sizeof(data) / sizeof(data[0]);
31 return int_vector(data, data + data_size);
32}
33
34std::vector<int> const build_vector()
35{
36 typedef std::vector<int> int_vector;
37 static int_vector data = init_vector();
38 int_vector::size_type const size = data.size();
39 int_vector::iterator it = data.begin();
40 int_vector::iterator const end = data.end();
41 for (; it != end; ++it)
42 *it += size;
43 return data;
44}
45
46int
47main()
48{
49 BOOST_STATIC_ASSERT((phx::stl::has_mapped_type<std::map<int, int> >::value));
b32b8144 50 BOOST_STATIC_ASSERT((phx::stl::has_key_type<std::map<int, int> >::value));
7c673cae
FG
51
52 std::map<int, int> const data = build_map();
53 test_map_insert(data);
54 test_key_comp(data);
55 test_max_size(data);
56 test_rbegin(data);
57 test_rend(data);
58 test_size(data);
59 test_value_comp(data);
60 return boost::report_errors();
61}
62