• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
build_list()9 std::list<int> const build_list()
10 {
11     std::vector<int> const data = build_vector();
12     return std::list<int>(data.begin(), data.end());
13 }
14 
init_vector()15 std::vector<int> const init_vector()
16 {
17     typedef std::vector<int> int_vector;
18     int const data[] = { -4, -3, -2, -1, 0 };
19     int_vector::size_type const data_size = sizeof(data) / sizeof(data[0]);
20     return int_vector(data, data + data_size);
21 }
22 
build_vector()23 std::vector<int> const build_vector()
24 {
25     typedef std::vector<int> int_vector;
26     static int_vector data = init_vector();
27     int_vector::size_type const size = data.size();
28     int_vector::iterator it = data.begin();
29     int_vector::iterator const end = data.end();
30     for (; it != end; ++it)
31         *it += size;
32     return data;
33 }
34 
35 int
main()36 main()
37 {
38     BOOST_STATIC_ASSERT((!phx::stl::has_mapped_type<std::list<int> >::value));
39     BOOST_STATIC_ASSERT((!phx::stl::has_key_type<std::list<int> >::value));
40 
41     std::list<int> const data = build_list();
42     test_rbegin(data);
43     test_rend(data);
44     test_resize(data);
45     test_size(data);
46     test_splice(data);
47     return boost::report_errors();
48 }
49 
50 
51