Add back-off strategy to EllenBinTree
[libcds.git] / tests / test-hdr / tree / hdr_ellenbintree_set_hp.cpp
index 9f0a3776e55a71326e02c0268c09157b471dfc61..814b6f0c774129e939ba7368572f9fc27a6f597c 100644 (file)
@@ -23,17 +23,15 @@ namespace tree {
                 std::cout << t.statistics();
             }
         };
-
     }
 
     void EllenBinTreeSetHdrTest::EllenBinTree_hp_less()
     {
-        typedef cc::EllenBinTreeSet< gc_type, key_type, value_type,
-            cc::ellen_bintree::make_set_traits<
-                cc::ellen_bintree::key_extractor< key_extractor >
-                ,co::less< less >
-            >::type
-        > set_type;
+        struct set_traits : public cc::ellen_bintree::traits{
+            typedef EllenBinTreeSetHdrTest::key_extractor key_extractor;
+            typedef EllenBinTreeSetHdrTest::less less;
+        };
+        typedef cc::EllenBinTreeSet< gc_type, key_type, value_type, set_traits > set_type;
 
         test<set_type, print_stat>();
     }
@@ -116,6 +114,21 @@ namespace tree {
         test<set_type, print_stat>();
     }
 
+    void EllenBinTreeSetHdrTest::EllenBinTree_hp_cmp_ic_stat_yield()
+    {
+        typedef cc::EllenBinTreeSet< gc_type, key_type, value_type,
+            cc::ellen_bintree::make_set_traits<
+                cc::ellen_bintree::key_extractor< key_extractor >
+                ,co::item_counter< cds::atomicity::item_counter >
+                ,co::stat< cc::ellen_bintree::stat<> >
+                ,co::compare< compare >
+                , co::back_off< cds::backoff::yield >
+            >::type
+        > set_type;
+
+        test<set_type, print_stat>();
+    }
+
     void EllenBinTreeSetHdrTest::EllenBinTree_hp_less_pool()
     {
         typedef cc::EllenBinTreeSet< gc_type, key_type, value_type,