X-Git-Url: http://plrg.eecs.uci.edu/git/?p=libcds.git;a=blobdiff_plain;f=tests%2Ftest-hdr%2Fset%2Fhdr_intrusive_splitlist_set_dhp_lazy.cpp;fp=tests%2Ftest-hdr%2Fset%2Fhdr_intrusive_splitlist_set_dhp_lazy.cpp;h=0000000000000000000000000000000000000000;hp=01072164673f72b1e006bc0b5534de0a74b6faa3;hb=cc36eb6fd0970a8ea7c8bfa3ebdf6b6dbd7739ac;hpb=d5a609092b48d81c8a751f4df55b48aa3cfa80bb diff --git a/tests/test-hdr/set/hdr_intrusive_splitlist_set_dhp_lazy.cpp b/tests/test-hdr/set/hdr_intrusive_splitlist_set_dhp_lazy.cpp deleted file mode 100644 index 01072164..00000000 --- a/tests/test-hdr/set/hdr_intrusive_splitlist_set_dhp_lazy.cpp +++ /dev/null @@ -1,449 +0,0 @@ -/* - This file is a part of libcds - Concurrent Data Structures library - - (C) Copyright Maxim Khizhinsky (libcds.dev@gmail.com) 2006-2016 - - Source code repo: http://github.com/khizmax/libcds/ - Download: http://sourceforge.net/projects/libcds/files/ - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -#include "set/hdr_intrusive_set.h" -#include -#include - -namespace set { - - void IntrusiveHashSetHdrTest::split_dyn_DHP_base_cmp_lazy() - { - typedef base_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,ci::split_list::dynamic_bucket_table - ,co::memory_model - >::type - > set; - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_dyn_DHP_base_less_lazy() - { - typedef base_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::less< less > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::memory_model - >::type - > set; - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_dyn_DHP_base_cmpmix_lazy() - { - typedef base_int_item< ci::split_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::less< less > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::item_counter< simple_item_counter > - ,ci::split_list::dynamic_bucket_table - >::type - > set; - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_dyn_DHP_base_cmpmix_stat_lazy() - { - typedef base_int_item< ci::split_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::less< less > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::item_counter< simple_item_counter > - ,ci::split_list::dynamic_bucket_table - ,co::stat< ci::split_list::stat<> > - >::type - > set; - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_dyn_DHP_member_cmp_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::member_hook< - offsetof( item, hMember ), - co::gc - > > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::memory_model - >::type - > set; - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_dyn_DHP_member_less_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::member_hook< - offsetof( item, hMember ), - co::gc - > > - ,co::less< less > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::memory_model - >::type - > set; - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_dyn_DHP_member_cmpmix_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::member_hook< - offsetof( item, hMember ), - co::gc - > > - ,co::compare< cmp > - ,co::less< less > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::item_counter< simple_item_counter > - >::type - > set; - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_dyn_DHP_member_cmpmix_stat_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - struct list_traits : public ci::lazy_list::traits - { - typedef ci::lazy_list::member_hook< offsetof( item, hMember ), co::gc> hook; - typedef cmp compare; - typedef IntrusiveHashSetHdrTest::less less; - typedef faked_disposer disposer; - }; - typedef ci::LazyList< cds::gc::DHP, item, list_traits > ord_list; - - struct set_traits : public ci::split_list::traits { - typedef hash_int hash; - typedef simple_item_counter item_counter; - typedef ci::split_list::stat<> stat; - }; - typedef ci::SplitListSet< cds::gc::DHP, ord_list, set_traits > set; - - static_assert( set::traits::dynamic_bucket_table, "Set has static bucket table" ); - - test_int(); - } - - // Static bucket table - void IntrusiveHashSetHdrTest::split_st_DHP_base_cmp_lazy() - { - typedef base_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,ci::split_list::dynamic_bucket_table - ,co::memory_model - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_st_DHP_base_less_lazy() - { - typedef base_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::less< less > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,ci::split_list::dynamic_bucket_table - ,co::memory_model - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_st_DHP_base_cmpmix_lazy() - { - typedef base_int_item< ci::split_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::less< less > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::item_counter< simple_item_counter > - ,ci::split_list::dynamic_bucket_table - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_st_DHP_base_cmpmix_stat_lazy() - { - typedef base_int_item< ci::split_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::base_hook< co::gc > > - ,co::less< less > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::item_counter< simple_item_counter > - ,ci::split_list::dynamic_bucket_table - ,co::stat< ci::split_list::stat<> > - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_st_DHP_member_cmp_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::member_hook< - offsetof( item, hMember ), - co::gc - > > - ,co::compare< cmp > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,ci::split_list::dynamic_bucket_table - ,co::memory_model - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_st_DHP_member_less_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::member_hook< - offsetof( item, hMember ), - co::gc - > > - ,co::less< less > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - ci::split_list::dynamic_bucket_table - ,co::hash< hash_int > - ,co::memory_model - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_st_DHP_member_cmpmix_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::member_hook< - offsetof( item, hMember ), - co::gc - > > - ,co::compare< cmp > - ,co::less< less > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::item_counter< simple_item_counter > - ,ci::split_list::dynamic_bucket_table - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - - void IntrusiveHashSetHdrTest::split_st_DHP_member_cmpmix_stat_lazy() - { - typedef member_int_item< ci::split_list::node< ci::lazy_list::node > > item; - typedef ci::LazyList< cds::gc::DHP - ,item - ,ci::lazy_list::make_traits< - ci::opt::hook< ci::lazy_list::member_hook< - offsetof( item, hMember ), - co::gc - > > - ,co::compare< cmp > - ,co::less< less > - ,ci::opt::disposer< faked_disposer > - >::type - > ord_list; - - typedef ci::SplitListSet< cds::gc::DHP, ord_list, - ci::split_list::make_traits< - co::hash< hash_int > - ,co::item_counter< simple_item_counter > - ,ci::split_list::dynamic_bucket_table - ,co::stat< ci::split_list::stat<> > - >::type - > set; - static_assert( !set::traits::dynamic_bucket_table, "Set has dynamic bucket table" ); - - test_int(); - } - -} // namespace set