File indexing completed on 2025-01-19 09:46:10
0001
0002
0003
0004
0005 #ifndef POINTEE_DWA2002323_HPP
0006 # define POINTEE_DWA2002323_HPP
0007
0008 # include <boost/python/detail/prefix.hpp>
0009 # include <boost/python/detail/type_traits.hpp>
0010
0011 namespace boost { namespace python {
0012
0013 namespace detail
0014 {
0015 template <bool is_ptr = true>
0016 struct pointee_impl
0017 {
0018 template <class T> struct apply : detail::remove_pointer<T> {};
0019 };
0020
0021 template <>
0022 struct pointee_impl<false>
0023 {
0024 template <class T> struct apply
0025 {
0026 typedef typename T::element_type type;
0027 };
0028 };
0029 }
0030
0031 template <class T>
0032 struct pointee
0033 : detail::pointee_impl<
0034 detail::is_pointer<T>::value
0035 >::template apply<T>
0036 {
0037 };
0038
0039 }}
0040
0041 #endif