intrusive/test/rb_test_common.hpp
2015-06-05 19:40:07 +02:00

46 lines
1.5 KiB
C++

/////////////////////////////////////////////////////////////////////////////
//
// (C) Copyright Ion Gaztanaga 2015-2015.
//
// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
//
// See http://www.boost.org/libs/intrusive for documentation.
//
/////////////////////////////////////////////////////////////////////////////
#ifndef BOOST_INTRUSIVE_TEST_RB_TEST_COMMON_HPP
#define BOOST_INTRUSIVE_TEST_RB_TEST_COMMON_HPP
#include <boost/intrusive/set_hook.hpp>
#include <boost/intrusive/detail/mpl.hpp>
#include "bs_test_common.hpp"
namespace boost {
namespace intrusive {
template<class VoidPointer>
struct rb_hooks
{
typedef set_base_hook<void_pointer<VoidPointer> > base_hook_type;
typedef set_base_hook
<link_mode<auto_unlink>
, void_pointer<VoidPointer>
, tag<void>
, optimize_size<true> > auto_base_hook_type;
typedef set_member_hook
<void_pointer<VoidPointer>
, optimize_size<true> > member_hook_type;
typedef set_member_hook
< link_mode<auto_unlink>
, void_pointer<VoidPointer> > auto_member_hook_type;
typedef nonhook_node_member< rbtree_node_traits<VoidPointer>,
rbtree_algorithms
> nonhook_node_member_type;
};
} //namespace intrusive {
} //namespace boost {
#endif //BOOST_INTRUSIVE_TEST_RB_TEST_COMMON_HPP