Website : rimsha.abasa.com
backdoor
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
usr
/
include
/
boost
/
python
/
Filename :
manage_new_object.hpp
back
Copy
// Copyright David Abrahams 2002. // 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) #ifndef MANAGE_NEW_OBJECT_DWA200222_HPP # define MANAGE_NEW_OBJECT_DWA200222_HPP # include <boost/python/detail/prefix.hpp> # include <boost/python/detail/indirect_traits.hpp> # include <boost/python/detail/type_traits.hpp> # include <boost/mpl/if.hpp> # include <boost/python/to_python_indirect.hpp> namespace boost { namespace python { namespace detail { template <class R> struct manage_new_object_requires_a_pointer_return_type # if defined(__GNUC__) || defined(__EDG__) {} # endif ; } struct manage_new_object { template <class T> struct apply { typedef typename mpl::if_c< detail::is_pointer<T>::value , to_python_indirect<T, detail::make_owning_holder> , detail::manage_new_object_requires_a_pointer_return_type<T> >::type type; }; }; }} // namespace boost::python #endif // MANAGE_NEW_OBJECT_DWA200222_HPP