#include "boost/config.hpp"
-# include "boost/mpl/bool.hpp"
+# include "boost/type_traits/integral_constant.hpp"
# include "boost/type_traits/has_nothrow_copy.hpp"
-#include "boost/mpl/void.hpp"
-
namespace boost {
namespace detail {
+struct void_type {};
+
///////////////////////////////////////////////////////////////////////////////
// (detail) class template reference_content
//
// Wraps with reference_content if specified type is reference.
//
-template <typename T = mpl::void_> struct make_reference_content;
+template <typename T = void_type> struct make_reference_content;
template <typename T>
template <>
-struct make_reference_content< mpl::void_ >
+struct make_reference_content< void_type >
{
template <typename T>
struct apply
{
};
- typedef mpl::void_ type;
+ typedef void_type type;
};
} // namespace detail
struct has_nothrow_copy<
::boost::detail::reference_content< T& >
>
- : mpl::true_
+ : boost::true_type
{
};