formatting
[libcds.git] / tests / test-hdr / map / print_skiplist_stat.h
1 //$$CDS-header$$
2
3 #ifndef CDSTEST_HDR_MAP_PRINT_SKIPLIST_STAT_H
4 #define CDSTEST_HDR_MAP_PRINT_SKIPLIST_STAT_H
5
6 #include "unit/print_skip_list_stat.h"
7
8 namespace misc {
9
10     template <typename Stat>
11     struct print_skiplist_stat;
12
13     template <>
14     struct print_skiplist_stat< cds::intrusive::skip_list::stat<> >
15     {
16         template <class Set>
17         std::string operator()( Set const& s, const char * pszHdr )
18         {
19             std::stringstream st;
20             if ( pszHdr ) {
21                 st << "\t\t" << pszHdr << "\n"
22                     << s.statistics();
23             }
24             else {
25                 st << s.statistics();
26             }
27             return st.str();
28         }
29     };
30
31     template<>
32     struct print_skiplist_stat< cds::intrusive::skip_list::empty_stat >
33     {
34         template <class Set>
35         std::string operator()( Set const& /*s*/, const char * /*pszHdr*/ )
36         {
37             return std::string();
38         }
39     };
40
41 }   // namespace misc
42
43 #endif // #ifndef CDSTEST_HDR_MAP_PRINT_SKIPLIST_STAT_H