Bronson AVL-tree impl
[libcds.git] / tests / unit / print_bronsonavltree_stat.h
1 //$$CDS-header$$
2
3 #ifndef CDSUNIT_PRINT_BRONSONAVLTREE_STAT_H
4 #define CDSUNIT_PRINT_BRONSONAVLTREE_STAT_H
5
6 #include <ostream>
7
8 namespace std {
9     static inline ostream& operator <<( ostream& o, cds::container::bronson_avltree::empty_stat const& /*s*/ )
10     {
11         return o;
12     }
13
14     static inline ostream& operator <<(ostream& o, cds::container::bronson_avltree::stat<> const& s)
15     {
16         return o << "\nBronsonAVLTree statistics [cds::container::bronson_avltree::stat]:\n"
17             << "\t\t            m_nFindSuccess: " << s.m_nFindSuccess.get()         << "\n"
18             << "\t\t             m_nFindFailed: " << s.m_nFindFailed.get()          << "\n"
19             << "\t\t              m_nFindRetry: " << s.m_nFindRetry.get()           << "\n"
20             << "\t\t      m_nFindWaitShrinking: " << s.m_nFindWaitShrinking.get()   << "\n"
21             << "\t\t          m_nInsertSuccess: " << s.m_nInsertSuccess.get()       << "\n"
22             << "\t\t    m_nRelaxedInsertFailed: " << s.m_nRelaxedInsertFailed.get() << "\n"
23             << "\t\t            m_nInsertRetry: " << s.m_nInsertRetry.get()         << "\n"
24             << "\t\t    m_nUpdateWaitShrinking: " << s.m_nUpdateWaitShrinking.get() << "\n"
25             << "\t\t            m_nUpdateRetry: " << s.m_nUpdateRetry.get()         << "\n"
26             << "\t\t m_nUpdateRootWaitShinking: " << s.m_nUpdateRootWaitShinking.get() << "\n"
27             << "\t\t          m_nUpdateSuccess: " << s.m_nUpdateSuccess.get()       << "\n"
28             << "\t\t         m_nUpdateUnlinked: " << s.m_nUpdateUnlinked.get()      << "\n"
29             << "\t\t          m_nDisposedValue: " << s.m_nDisposedValue.get()       << "\n";
30     }
31 }
32
33 #endif // #ifndef CDSUNIT_PRINT_ELLENBINTREE_STAT_H