1 // Copyright David Abrahams 2004. Distributed under the Boost
2 // Software License, Version 1.0. (See accompanying
3 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
4 #ifndef UNWRAP_TYPE_ID_DWA2004722_HPP
5 # define UNWRAP_TYPE_ID_DWA2004722_HPP
6 
7 # include <boost/python/type_id.hpp>
8 
9 # include <boost/mpl/bool.hpp>
10 
11 namespace boost { namespace python {
12 
13 template <class T> class wrapper;
14 
15 namespace detail {
16 
17 template <class T>
unwrap_type_id(T *,...)18 inline type_info unwrap_type_id(T*, ...)
19 {
20     return type_id<T>();
21 }
22 
23 template <class U, class T>
unwrap_type_id(U *,wrapper<T> *)24 inline type_info unwrap_type_id(U*, wrapper<T>*)
25 {
26     return type_id<T>();
27 }
28 
29 }}} // namespace boost::python::detail
30 
31 #endif // UNWRAP_TYPE_ID_DWA2004722_HPP
32