/*============================================================================= Copyright (c) 2004 Angus Leeming Copyright (c) 2017 Kohei Takahashi Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ==============================================================================*/ #include "container_tests.hpp" #include std::unordered_map const build_unordered_map() { typedef std::unordered_map int_map; typedef std::vector int_vector; int_map result; int_vector const data = build_vector(); int_vector::const_iterator it = data.begin(); int_vector::const_iterator const end = data.end(); for (; it != end; ++it) { int const value = *it; result[value] = 100 * value; } return result; } std::vector const init_vector() { typedef std::vector int_vector; int const data[] = { -4, -3, -2, -1, 0 }; int_vector::size_type const data_size = sizeof(data) / sizeof(data[0]); return int_vector(data, data + data_size); } std::vector const build_vector() { typedef std::vector int_vector; static int_vector data = init_vector(); int_vector::size_type const size = data.size(); int_vector::iterator it = data.begin(); int_vector::iterator const end = data.end(); for (; it != end; ++it) *it += size; return data; } int main() { BOOST_STATIC_ASSERT((phx::stl::has_mapped_type >::value)); BOOST_STATIC_ASSERT((phx::stl::has_key_type >::value)); std::unordered_map const data = build_unordered_map(); test_map_insert(data); //test_key_comp(data); test_max_size(data); //test_rbegin(data); //test_rend(data); test_size(data); //test_value_comp(data); return boost::report_errors(); }