forked from boostorg/unordered
interim commit
This commit is contained in:
@ -52,7 +52,7 @@ namespace boost {
|
||||
return kv.first;
|
||||
}
|
||||
|
||||
static moved_type move(value_type& x)
|
||||
static moved_type move(storage_type& x)
|
||||
{
|
||||
// TODO: we probably need to launder here
|
||||
return {std::move(const_cast<raw_key_type&>(x.first)),
|
||||
|
@ -1093,8 +1093,8 @@ namespace insert_tests {
|
||||
insert_initializer_list_map_impl<
|
||||
boost::unordered_node_map<std::string, std::string> >();
|
||||
#else
|
||||
insert_initializer_list_map_implboost::unordered_map<std::string,
|
||||
std::string>();
|
||||
insert_initializer_list_map_impl<
|
||||
boost::unordered_map<std::string, std::string> >();
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1427,8 +1427,11 @@ RUN_TESTS_QUIET()
|
||||
|
||||
#else // PIECEWISE_TEST_NAME
|
||||
|
||||
#define PIECEWISE_TEST_HELPER(A, B) A##B
|
||||
#define MAKE_PIECEWIES_TEST(X) PIECEWISE_TEST_HELPER(X, _impl)
|
||||
|
||||
template <class Map>
|
||||
static void piecewise_test_impl()
|
||||
static void MAKE_PIECEWIES_TEST(PIECEWISE_TEST_NAME)()
|
||||
{
|
||||
#if EMULATING_PIECEWISE_CONSTRUCTION
|
||||
test::detail::disable_construction_tracking _scoped;
|
||||
@ -1486,12 +1489,12 @@ UNORDERED_AUTO_TEST (PIECEWISE_TEST_NAME) {
|
||||
|
||||
{
|
||||
#if defined(BOOST_UNORDERED_FOA_TESTS)
|
||||
// typedef boost::unordered_flat_map<overloaded_constructor, overloaded_constructor,
|
||||
// boost::hash<overloaded_constructor>,
|
||||
// std::equal_to<overloaded_constructor>,
|
||||
// test::allocator1<
|
||||
// std::pair<overloaded_constructor const, overloaded_constructor> > >
|
||||
// flat_map;
|
||||
typedef boost::unordered_flat_map<overloaded_constructor, overloaded_constructor,
|
||||
boost::hash<overloaded_constructor>,
|
||||
std::equal_to<overloaded_constructor>,
|
||||
test::allocator1<
|
||||
std::pair<overloaded_constructor const, overloaded_constructor> > >
|
||||
flat_map;
|
||||
|
||||
typedef boost::unordered_node_map<overloaded_constructor, overloaded_constructor,
|
||||
boost::hash<overloaded_constructor>,
|
||||
@ -1500,8 +1503,8 @@ UNORDERED_AUTO_TEST (PIECEWISE_TEST_NAME) {
|
||||
std::pair<overloaded_constructor const, overloaded_constructor> > >
|
||||
node_map;
|
||||
|
||||
// piecewise_test_impl<flat_map>();
|
||||
piecewise_test_impl<node_map>();
|
||||
MAKE_PIECEWIES_TEST(PIECEWISE_TEST_NAME)<flat_map>();
|
||||
MAKE_PIECEWIES_TEST(PIECEWISE_TEST_NAME)<node_map>();
|
||||
#else
|
||||
typedef boost::unordered_map<overloaded_constructor, overloaded_constructor,
|
||||
boost::hash<overloaded_constructor>,
|
||||
@ -1510,7 +1513,7 @@ UNORDERED_AUTO_TEST (PIECEWISE_TEST_NAME) {
|
||||
std::pair<overloaded_constructor const, overloaded_constructor> > >
|
||||
map;
|
||||
|
||||
piecewise_test_impl<map>();
|
||||
MAKE_PIECEWIES_TEST(PIECEWISE_TEST_NAME)<map>();
|
||||
#endif
|
||||
}
|
||||
#ifndef BOOST_UNORDERED_FOA_TESTS
|
||||
|
@ -335,12 +335,14 @@ namespace move_tests {
|
||||
static_cast<typename T::size_type>(std::distance(y.begin(), y.end())));
|
||||
}
|
||||
|
||||
#ifndef BOOST_UNORDERED_FOA_TESTS
|
||||
template <class T> static void extract(T& y, test::random_values<T> const& v)
|
||||
{
|
||||
(void)y.extract(get_key(*v.begin()));
|
||||
BOOST_TEST_EQ(y.size(),
|
||||
static_cast<typename T::size_type>(std::distance(y.begin(), y.end())));
|
||||
}
|
||||
#endif
|
||||
|
||||
template <class T> static void merge(T& y, test::random_values<T> const& v)
|
||||
{
|
||||
@ -375,6 +377,7 @@ namespace move_tests {
|
||||
static_cast<typename T::size_type>(std::distance(y.begin(), y.end())));
|
||||
}
|
||||
|
||||
#ifndef BOOST_UNORDERED_FOA_TESTS
|
||||
template <class T> static void buckets(T& y, test::random_values<T> const& v)
|
||||
{
|
||||
(void)y.begin(0);
|
||||
@ -384,6 +387,7 @@ namespace move_tests {
|
||||
(void)y.bucket_size(0);
|
||||
(void)y.bucket(get_key(*v.begin()));
|
||||
}
|
||||
#endif
|
||||
|
||||
template <class T>
|
||||
static void double_move_construct(T& y, test::random_values<T> const&)
|
||||
|
Reference in New Issue
Block a user