Merge branch 'integration' into dev
[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
10     static inline ostream& operator <<( ostream& o, cds::container::bronson_avltree::empty_stat const& /*s*/ )
11     {
12         return o;
13     }
14
15     static inline ostream& operator <<(ostream& o, cds::container::bronson_avltree::stat<> const& s)
16     {
17         return o << "\nBronsonAVLTree statistics [cds::container::bronson_avltree::stat]:\n"
18             << "\t\t             m_nFindSuccess: " << s.m_nFindSuccess.get()         << "\n"
19             << "\t\t              m_nFindFailed: " << s.m_nFindFailed.get()          << "\n"
20             << "\t\t               m_nFindRetry: " << s.m_nFindRetry.get()           << "\n"
21             << "\t\t       m_nFindWaitShrinking: " << s.m_nFindWaitShrinking.get()   << "\n"
22             << "\t\t           m_nInsertSuccess: " << s.m_nInsertSuccess.get()       << "\n"
23             << "\t\t            m_nInsertFailed: " << s.m_nInsertFailed.get()        << "\n"
24             << "\t\t     m_nRelaxedInsertFailed: " << s.m_nRelaxedInsertFailed.get() << "\n"
25             << "\t\t             m_nInsertRetry: " << s.m_nInsertRetry.get()         << "\n"
26             << "\t\t     m_nUpdateWaitShrinking: " << s.m_nUpdateWaitShrinking.get() << "\n"
27             << "\t\t             m_nUpdateRetry: " << s.m_nUpdateRetry.get()         << "\n"
28             << "\t\t m_nUpdateRootWaitShrinking: " << s.m_nUpdateRootWaitShrinking.get() << "\n"
29             << "\t\t           m_nUpdateSuccess: " << s.m_nUpdateSuccess.get()       << "\n"
30             << "\t\t          m_nUpdateUnlinked: " << s.m_nUpdateUnlinked.get()      << "\n"
31             << "\t\t           m_nRemoveSuccess: " << s.m_nRemoveSuccess.get()       << "\n"
32             << "\t\t            m_nRemoveFailed: " << s.m_nRemoveFailed.get()        << "\n"
33             << "\t\t             m_nRemoveRetry: " << s.m_nRemoveRetry.get()         << "\n"
34             << "\t\t          m_nExtractSuccess: " << s.m_nExtractSuccess.get()      << "\n"
35             << "\t\t           m_nExtractFailed: " << s.m_nExtractFailed.get()       << "\n"
36             << "\t\t     m_nRemoveWaitShrinking: " << s.m_nRemoveWaitShrinking.get() << "\n"
37             << "\t\t m_nRemoveRootWaitShrinking: " << s.m_nRemoveRootWaitShrinking.get() << "\n"
38             << "\t\t         m_nMakeRoutingNode: " << s.m_nMakeRoutingNode.get()     << "\n"
39             << "\t\t           m_nDisposedValue: " << s.m_nDisposedValue.get()       << "\n"
40             << "\t\t            m_nDisposedNode: " << s.m_nDisposedNode.get()        << "\n"
41             << "\t\t          m_nExtractedValue: " << s.m_nExtractedValue.get()      << "\n"
42             << "\t\t           m_nRightRotation: " << s.m_nRightRotation.get()       << "\n"
43             << "\t\t            m_nLeftRotation: " << s.m_nLeftRotation.get()        << "\n"
44             << "\t\t       m_nLeftRightRotation: " << s.m_nLeftRightRotation.get()   << "\n"
45             << "\t\t       m_nRightLeftRotation: " << s.m_nRightLeftRotation.get()   << "\n"
46             << "\t\t      m_nInsertRebalanceReq: " << s.m_nInsertRebalanceReq.get()  << "\n"
47             << "\t\t      m_nRemoveRebalanceReq: " << s.m_nRemoveRebalanceReq.get()  << "\n"
48             << "\t\tm_nRotateAfterRightRotation: " << s.m_nRotateAfterRightRotation.get() << "\n"
49             << "\t\tm_nRemoveAfterRightRotation: " << s.m_nRemoveAfterRightRotation.get() << "\n"
50             << "\t\tm_nDamageAfterRightRotation: " << s.m_nDamageAfterRightRotation.get() << "\n"
51             << "\t\t m_nRotateAfterLeftRotation: " << s.m_nRotateAfterLeftRotation.get() << "\n"
52             << "\t\t m_nRemoveAfterLeftRotation: " << s.m_nRemoveAfterLeftRotation.get() << "\n"
53             << "\t\t m_nDamageAfterLeftRotation: " << s.m_nDamageAfterLeftRotation.get() << "\n"
54             << "\t\t   m_nRotateAfterRLRotation: " << s.m_nRotateAfterRLRotation.get() << "\n"
55             << "\t\t   m_nRemoveAfterRLRotation: " << s.m_nRemoveAfterRLRotation.get() << "\n"
56             << "\t\t   m_nRotateAfterLRRotation: " << s.m_nRotateAfterLRRotation.get() << "\n"
57             << "\t\t   m_nRemoveAfterLRRotation: " << s.m_nRemoveAfterLRRotation.get() << "\n";
58     }
59 } //namespace std
60
61 #endif // #ifndef CDSUNIT_PRINT_ELLENBINTREE_STAT_H