3 #include "set/hdr_intrusive_set.h"
4 #include <cds/intrusive/lazy_list_dhp.h>
5 #include <cds/intrusive/michael_set.h>
9 void IntrusiveHashSetHdrTest::DHP_base_cmp_lazy()
11 typedef base_int_item< ci::lazy_list::node<cds::gc::DHP> > item;
12 typedef ci::LazyList< cds::gc::DHP
14 ,ci::lazy_list::make_traits<
15 ci::opt::hook< ci::lazy_list::base_hook< co::gc<cds::gc::DHP> > >
16 ,co::compare< cmp<item> >
17 ,ci::opt::disposer< faked_disposer >
21 typedef ci::MichaelHashSet< cds::gc::DHP, bucket_type,
22 ci::michael_set::make_traits<
30 void IntrusiveHashSetHdrTest::DHP_base_less_lazy()
32 typedef base_int_item< ci::lazy_list::node<cds::gc::DHP> > item;
33 typedef ci::LazyList< cds::gc::DHP
35 ,ci::lazy_list::make_traits<
36 ci::opt::hook< ci::lazy_list::base_hook< co::gc<cds::gc::DHP> > >
37 ,co::less< less<item> >
38 ,ci::opt::disposer< faked_disposer >
42 typedef ci::MichaelHashSet< cds::gc::DHP, bucket_type,
43 ci::michael_set::make_traits<
51 void IntrusiveHashSetHdrTest::DHP_base_cmpmix_lazy()
53 typedef base_int_item< ci::lazy_list::node<cds::gc::DHP> > item;
54 typedef ci::LazyList< cds::gc::DHP
56 ,ci::lazy_list::make_traits<
57 ci::opt::hook< ci::lazy_list::base_hook< co::gc<cds::gc::DHP> > >
58 ,co::less< less<item> >
59 ,co::compare< cmp<item> >
60 ,ci::opt::disposer< faked_disposer >
64 typedef ci::MichaelHashSet< cds::gc::DHP, bucket_type,
65 ci::michael_set::make_traits<
67 ,co::item_counter< simple_item_counter >
74 void IntrusiveHashSetHdrTest::DHP_member_cmp_lazy()
76 typedef member_int_item< ci::lazy_list::node<cds::gc::DHP> > item;
77 typedef ci::LazyList< cds::gc::DHP
79 ,ci::lazy_list::make_traits<
80 ci::opt::hook< ci::lazy_list::member_hook<
81 offsetof( item, hMember ),
84 ,co::compare< cmp<item> >
85 ,ci::opt::disposer< faked_disposer >
89 typedef ci::MichaelHashSet< cds::gc::DHP, bucket_type,
90 ci::michael_set::make_traits<
98 void IntrusiveHashSetHdrTest::DHP_member_less_lazy()
100 typedef member_int_item< ci::lazy_list::node<cds::gc::DHP> > item;
101 typedef ci::LazyList< cds::gc::DHP
103 ,ci::lazy_list::make_traits<
104 ci::opt::hook< ci::lazy_list::member_hook<
105 offsetof( item, hMember ),
108 ,co::less< less<item> >
109 ,ci::opt::disposer< faked_disposer >
113 typedef ci::MichaelHashSet< cds::gc::DHP, bucket_type,
114 ci::michael_set::make_traits<
122 void IntrusiveHashSetHdrTest::DHP_member_cmpmix_lazy()
124 typedef member_int_item< ci::lazy_list::node<cds::gc::DHP> > item;
125 typedef ci::LazyList< cds::gc::DHP
127 ,ci::lazy_list::make_traits<
128 ci::opt::hook< ci::lazy_list::member_hook<
129 offsetof( item, hMember ),
132 ,co::compare< cmp<item> >
133 ,co::less< less<item> >
134 ,ci::opt::disposer< faked_disposer >
138 typedef ci::MichaelHashSet< cds::gc::DHP, bucket_type,
139 ci::michael_set::make_traits<
141 ,co::item_counter< simple_item_counter >