// 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)
+// clang-format off
#include "../helpers/prefix.hpp"
#include <boost/unordered_set.hpp>
#include <boost/unordered_map.hpp>
#include "../helpers/postfix.hpp"
+// clang-format on
#include <boost/config.hpp>
#include <algorithm>
#include "../helpers/invariants.hpp"
#if defined(BOOST_MSVC)
-#pragma warning(disable:4127) // conditional expression is constant
+#pragma warning(disable : 4127) // conditional expression is constant
#endif
-namespace swap_tests
-{
+namespace swap_tests {
test::seed_t initialize_seed(783472);
-template <class X>
-void swap_test_impl(X& x1, X& x2)
+template <class X> void swap_test_impl(X& x1, X& x2)
{
test::ordered<X> tracker1 = test::create_ordered(x1);
test::ordered<X> tracker2 = test::create_ordered(x2);
tracker2.compare(x1);
}
-template <class X>
-void swap_tests1(X*, test::random_generator generator)
+template <class X> void swap_tests1(X*, test::random_generator generator)
{
{
test::check_instances check_;
{
test::check_instances check_;
- X x,y;
+ X x, y;
swap_test_impl(x, y);
}
}
}
-template <class X>
-void swap_tests2(X* ptr, test::random_generator generator)
+template <class X> void swap_tests2(X* ptr, test::random_generator generator)
{
swap_tests1(ptr, generator);
X y(vy.begin(), vy.end(), 0, hasher(), key_equal(), allocator_type(2));
if (allocator_type::is_propagate_on_swap ||
- x.get_allocator() == y.get_allocator())
- {
+ x.get_allocator() == y.get_allocator()) {
swap_test_impl(x, y);
}
}
allocator_type(2));
if (allocator_type::is_propagate_on_swap ||
- x.get_allocator() == y.get_allocator())
- {
+ x.get_allocator() == y.get_allocator()) {
swap_test_impl(x, y);
swap_test_impl(x, y);
}
}
}
-boost::unordered_map<test::object, test::object,
- test::hash, test::equal_to,
- std::allocator<test::object> >* test_map_std_alloc;
-
-boost::unordered_set<test::object,
- test::hash, test::equal_to,
- test::allocator1<test::object> >* test_set;
-boost::unordered_multiset<test::object,
- test::hash, test::equal_to,
- test::allocator2<test::object> >* test_multiset;
-boost::unordered_map<test::object, test::object,
- test::hash, test::equal_to,
- test::allocator1<test::object> >* test_map;
-boost::unordered_multimap<test::object, test::object,
- test::hash, test::equal_to,
- test::allocator2<test::object> >* test_multimap;
-
-boost::unordered_set<test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::propagate_swap> >*
+boost::unordered_map<test::object, test::object, test::hash, test::equal_to,
+ std::allocator<test::object> >* test_map_std_alloc;
+
+boost::unordered_set<test::object, test::hash, test::equal_to,
+ test::allocator1<test::object> >* test_set;
+boost::unordered_multiset<test::object, test::hash, test::equal_to,
+ test::allocator2<test::object> >* test_multiset;
+boost::unordered_map<test::object, test::object, test::hash, test::equal_to,
+ test::allocator1<test::object> >* test_map;
+boost::unordered_multimap<test::object, test::object, test::hash,
+ test::equal_to, test::allocator2<test::object> >* test_multimap;
+
+boost::unordered_set<test::object, test::hash, test::equal_to,
+ test::cxx11_allocator<test::object, test::propagate_swap> >*
test_set_prop_swap;
-boost::unordered_multiset<test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::propagate_swap> >*
+boost::unordered_multiset<test::object, test::hash, test::equal_to,
+ test::cxx11_allocator<test::object, test::propagate_swap> >*
test_multiset_prop_swap;
-boost::unordered_map<test::object, test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::propagate_swap> >*
+boost::unordered_map<test::object, test::object, test::hash, test::equal_to,
+ test::cxx11_allocator<test::object, test::propagate_swap> >*
test_map_prop_swap;
-boost::unordered_multimap<test::object, test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::propagate_swap> >*
+boost::unordered_multimap<test::object, test::object, test::hash,
+ test::equal_to, test::cxx11_allocator<test::object, test::propagate_swap> >*
test_multimap_prop_swap;
-boost::unordered_set<test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::no_propagate_swap> >*
+boost::unordered_set<test::object, test::hash, test::equal_to,
+ test::cxx11_allocator<test::object, test::no_propagate_swap> >*
test_set_no_prop_swap;
-boost::unordered_multiset<test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::no_propagate_swap> >*
+boost::unordered_multiset<test::object, test::hash, test::equal_to,
+ test::cxx11_allocator<test::object, test::no_propagate_swap> >*
test_multiset_no_prop_swap;
-boost::unordered_map<test::object, test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::no_propagate_swap> >*
+boost::unordered_map<test::object, test::object, test::hash, test::equal_to,
+ test::cxx11_allocator<test::object, test::no_propagate_swap> >*
test_map_no_prop_swap;
-boost::unordered_multimap<test::object, test::object,
- test::hash, test::equal_to,
- test::cxx11_allocator<test::object, test::no_propagate_swap> >*
+boost::unordered_multimap<test::object, test::object, test::hash,
+ test::equal_to,
+ test::cxx11_allocator<test::object, test::no_propagate_swap> >*
test_multimap_no_prop_swap;
-template <typename T>
-bool is_propagate(T*)
+template <typename T> bool is_propagate(T*)
{
return T::allocator_type::is_propagate_on_swap;
}
BOOST_TEST(!is_propagate(test_set_no_prop_swap));
}
-UNORDERED_TEST(swap_tests1, (
- (test_map_std_alloc)
- (test_set)(test_multiset)(test_map)(test_multimap)
- (test_set_prop_swap)(test_multiset_prop_swap)(test_map_prop_swap)(test_multimap_prop_swap)
- (test_set_no_prop_swap)(test_multiset_no_prop_swap)(test_map_no_prop_swap)(test_multimap_no_prop_swap)
- )
- ((default_generator)(generate_collisions)(limited_range))
-)
-
-UNORDERED_TEST(swap_tests2, (
- (test_set)(test_multiset)(test_map)(test_multimap)
- (test_set_prop_swap)(test_multiset_prop_swap)(test_map_prop_swap)(test_multimap_prop_swap)
- (test_set_no_prop_swap)(test_multiset_no_prop_swap)(test_map_no_prop_swap)(test_multimap_no_prop_swap)
- )
- ((default_generator)(generate_collisions)(limited_range))
-)
-
+UNORDERED_TEST(swap_tests1,
+ ((test_map_std_alloc)(test_set)(test_multiset)(test_map)(test_multimap)(
+ test_set_prop_swap)(test_multiset_prop_swap)(test_map_prop_swap)(
+ test_multimap_prop_swap)(test_set_no_prop_swap)(
+ test_multiset_no_prop_swap)(test_map_no_prop_swap)(
+ test_multimap_no_prop_swap))(
+ (default_generator)(generate_collisions)(limited_range)))
+
+UNORDERED_TEST(swap_tests2,
+ ((test_set)(test_multiset)(test_map)(test_multimap)(test_set_prop_swap)(
+ test_multiset_prop_swap)(test_map_prop_swap)(test_multimap_prop_swap)(
+ test_set_no_prop_swap)(test_multiset_no_prop_swap)(
+ test_map_no_prop_swap)(test_multimap_no_prop_swap))(
+ (default_generator)(generate_collisions)(limited_range)))
}
RUN_TESTS()