5e0d5da735ac4950f01ddb3bcf57580fdaf8c372
[libcds.git] / tests / test-hdr / ordered_list / hdr_intrusive_michael_hrc.cpp
1 //$$CDS-header$$
2
3 #include "ordered_list/hdr_intrusive_michael.h"
4 #include <cds/intrusive/michael_list_hrc.h>
5
6 namespace ordlist {
7
8     void IntrusiveMichaelListHeaderTest::HRC_base_cmp()
9     {
10         typedef base_int_item< cds::gc::HRC > item;
11         typedef ci::MichaelList< cds::gc::HRC
12             ,item
13             ,ci::michael_list::make_traits<
14                 ci::opt::hook< ci::michael_list::base_hook< co::gc<cds::gc::HRC> > >
15                 ,co::compare< cmp<item> >
16                 ,ci::opt::disposer< faked_disposer >
17             >::type
18         >    list;
19         test_int<list>();
20     }
21     void IntrusiveMichaelListHeaderTest::HRC_base_less()
22     {
23         typedef base_int_item< cds::gc::HRC > item;
24         typedef ci::MichaelList< cds::gc::HRC
25             ,item
26             ,ci::michael_list::make_traits<
27                 ci::opt::hook< ci::michael_list::base_hook< co::gc<cds::gc::HRC> > >
28                 ,co::less< less<item> >
29                 ,ci::opt::disposer< faked_disposer >
30             >::type
31         >    list;
32         test_int<list>();
33     }
34     void IntrusiveMichaelListHeaderTest::HRC_base_cmpmix()
35     {
36         typedef base_int_item< cds::gc::HRC > item;
37         typedef ci::MichaelList< cds::gc::HRC
38             ,item
39             ,ci::michael_list::make_traits<
40                 ci::opt::hook< ci::michael_list::base_hook< co::gc<cds::gc::HRC> > >
41                 ,co::less< less<item> >
42                 ,co::compare< cmp<item> >
43                 ,ci::opt::disposer< faked_disposer >
44             >::type
45         >    list;
46         test_int<list>();
47     }
48     void IntrusiveMichaelListHeaderTest::HRC_base_ic()
49     {
50         typedef base_int_item< cds::gc::HRC > item;
51         typedef ci::MichaelList< cds::gc::HRC
52             ,item
53             ,ci::michael_list::make_traits<
54                 ci::opt::hook< ci::michael_list::base_hook< co::gc<cds::gc::HRC> > >
55                 ,co::less< less<item> >
56                 ,co::compare< cmp<item> >
57                 ,ci::opt::disposer< faked_disposer >
58                 ,co::item_counter< cds::atomicity::item_counter >
59             >::type
60         >    list;
61         test_int<list>();
62     }
63
64 }