1 /////////////////////////////////////////////////////////////////////////////
3 // (C) Copyright Ion Gaztanaga 2006. Distributed under the Boost
4 // Software License, Version 1.0. (See accompanying file
5 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 // See http://www.boost.org/libs/intrusive for documentation.
9 /////////////////////////////////////////////////////////////////////////////
11 #ifndef BOOST_INTRUSIVE_POINTER_TO_OTHER_HPP
12 #define BOOST_INTRUSIVE_POINTER_TO_OTHER_HPP
14 #include <boost/intrusive/detail/config_begin.hpp>
15 #include <boost/version.hpp>
17 #if (BOOST_VERSION < 103400)
19 #ifndef BOOST_POINTER_TO_OTHER_HPP_INCLUDED
20 #define BOOST_POINTER_TO_OTHER_HPP_INCLUDED
24 template<class T
, class U
>
25 struct pointer_to_other
;
27 template<class T
, class U
, template <class> class Sp
>
28 struct pointer_to_other
< Sp
<T
>, U
>
33 template<class T
, class T2
, class U
,
34 template <class, class> class Sp
>
35 struct pointer_to_other
< Sp
<T
, T2
>, U
>
37 typedef Sp
<U
, T2
> type
;
40 template<class T
, class T2
, class T3
, class U
,
41 template <class, class, class> class Sp
>
42 struct pointer_to_other
< Sp
<T
, T2
, T3
>, U
>
44 typedef Sp
<U
, T2
, T3
> type
;
47 template<class T
, class U
>
48 struct pointer_to_other
< T
*, U
>
59 #include <boost/pointer_to_other.hpp>
61 #endif //#ifndef BOOST_POINTER_TO_OTHER_HPP_INCLUDED
63 #include <boost/intrusive/detail/config_end.hpp>
65 #endif //#ifndef BOOST_INTRUSIVE_POINTER_TO_OTHER_HPP