shared_ptr_to_python.hpp

来自「CGAL is a collaborative effort of severa」· HPP 代码 · 共 29 行

HPP
29
字号
// Copyright David Abrahams 2003.// 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 SHARED_PTR_TO_PYTHON_DWA2003224_HPP# define SHARED_PTR_TO_PYTHON_DWA2003224_HPP# include <boost/python/refcount.hpp># include <boost/python/converter/shared_ptr_deleter.hpp># include <boost/shared_ptr.hpp># include <boost/get_pointer.hpp>namespace boost { namespace python { namespace converter { template <class T>PyObject* shared_ptr_to_python(shared_ptr<T> const& x){    if (!x)        return python::detail::none();    else if (shared_ptr_deleter* d = boost::get_deleter<shared_ptr_deleter>(x))        return incref( get_pointer( d->owner ) );    else        return converter::registered<shared_ptr<T> const&>::converters.to_python(&x);}}}} // namespace boost::python::converter#endif // SHARED_PTR_TO_PYTHON_DWA2003224_HPP

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?