<hr>
*/
- template < typename Container, CDS_DECL_OPTIONS >
+ template < typename Container, typename... Options >
class adapt
{
public:
typedef typename container_type::value_compare key_comparator;
private:
-# ifndef CDS_CXX11_LAMBDA_SUPPORT
- struct empty_insert_functor {
- void operator()( value_type& )
- {}
- };
-# endif
-
container_type m_Set;
public:
{
value_type& val = *itWhat;
from.base_container().erase( itWhat );
-# ifdef CDS_CXX11_LAMBDA_SUPPORT
insert( val, []( value_type& ) {} );
-# else
- insert( val, empty_insert_functor() );
-# endif
}
};
} // namespace details
} // namespace striped_set
}} // namespace cds::intrusive
-//@cond
-#if defined(CDS_CXX11_VARIADIC_TEMPLATE_SUPPORT) && defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES)
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS3 typename... BIOptions
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS4 typename... BIOptions
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS5 typename... BIOptions
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS6 typename... BIOptions
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS7 typename... BIOptions
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS8 typename... BIOptions
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS9 typename... BIOptions
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS10 typename... BIOptions
-
-# define CDS_BOOST_INTRUSIVE_OPTIONS3 BIOptions...
-# define CDS_BOOST_INTRUSIVE_OPTIONS4 BIOptions...
-# define CDS_BOOST_INTRUSIVE_OPTIONS5 BIOptions...
-# define CDS_BOOST_INTRUSIVE_OPTIONS6 BIOptions...
-# define CDS_BOOST_INTRUSIVE_OPTIONS7 BIOptions...
-# define CDS_BOOST_INTRUSIVE_OPTIONS8 BIOptions...
-# define CDS_BOOST_INTRUSIVE_OPTIONS9 BIOptions...
-# define CDS_BOOST_INTRUSIVE_OPTIONS10 BIOptions...
-#else
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS3 typename BIO1, typename BIO2, typename BIO3
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS4 CDS_BOOST_INTRUSIVE_DECL_OPTIONS3, typename BIO4
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS5 CDS_BOOST_INTRUSIVE_DECL_OPTIONS4, typename BIO5
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS6 CDS_BOOST_INTRUSIVE_DECL_OPTIONS5, typename BIO6
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS7 CDS_BOOST_INTRUSIVE_DECL_OPTIONS6, typename BIO7
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS8 CDS_BOOST_INTRUSIVE_DECL_OPTIONS7, typename BIO8
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS9 CDS_BOOST_INTRUSIVE_DECL_OPTIONS8, typename BIO9
-# define CDS_BOOST_INTRUSIVE_DECL_OPTIONS10 CDS_BOOST_INTRUSIVE_DECL_OPTIONS9, typename BIO10
-
-# define CDS_BOOST_INTRUSIVE_OPTIONS3 BIO1,BIO2,BIO3
-# define CDS_BOOST_INTRUSIVE_OPTIONS4 CDS_BOOST_INTRUSIVE_OPTIONS3, BIO4
-# define CDS_BOOST_INTRUSIVE_OPTIONS5 CDS_BOOST_INTRUSIVE_OPTIONS4, BIO5
-# define CDS_BOOST_INTRUSIVE_OPTIONS6 CDS_BOOST_INTRUSIVE_OPTIONS5, BIO6
-# define CDS_BOOST_INTRUSIVE_OPTIONS7 CDS_BOOST_INTRUSIVE_OPTIONS6, BIO7
-# define CDS_BOOST_INTRUSIVE_OPTIONS8 CDS_BOOST_INTRUSIVE_OPTIONS7, BIO8
-# define CDS_BOOST_INTRUSIVE_OPTIONS9 CDS_BOOST_INTRUSIVE_OPTIONS8, BIO9
-# define CDS_BOOST_INTRUSIVE_OPTIONS10 CDS_BOOST_INTRUSIVE_OPTIONS9, BIO10
-#endif
-//@endcond
-
#endif // #ifndef __CDS_INTRUSIVE_STRIPED_SET_ADAPTER_H