3 #ifndef __CDS_CONTAINER_MICHAEL_SET_BASE_H
4 #define __CDS_CONTAINER_MICHAEL_SET_BASE_H
6 #include <cds/intrusive/michael_set_base.h>
8 namespace cds { namespace container {
10 /// MichaelHashSet related definitions
11 /** @ingroup cds_nonintrusive_helper
13 namespace michael_set {
15 /// Type traits for MichaelHashSet class (typedef for cds::intrusive::michael_set::type_traits)
16 typedef intrusive::michael_set::type_traits type_traits;
18 /// Metafunction converting option list to traits struct
20 This is a synonym for intrusive::michael_set::make_traits
22 template <CDS_DECL_OPTIONS3>
24 typedef typename intrusive::michael_set::make_traits<CDS_OPTIONS3>::type type ; ///< Result of metafunction
29 using intrusive::michael_set::details::init_hash_bitmask;
30 using intrusive::michael_set::details::list_iterator_selector;
31 using intrusive::michael_set::details::iterator;
37 // Forward declarations
38 template <class GC, class OrderedList, class Traits = michael_set::type_traits>
42 }} // namespace cds::container
44 #endif // #ifndef __CDS_CONTAINER_MICHAEL_SET_BASE_H