/usr/include/boost/python/converter
NameSizeModeActions
arg_from_python.hpp92030644editdlrm
arg_to_python.hpp73970644editdlrm
arg_to_python_base.hpp6480644editdlrm
as_to_python_function.hpp21670644editdlrm
builtin_converters.hpp88010644editdlrm
constructor_function.hpp6590644editdlrm
context_result_converter.hpp6230644editdlrm
convertible_function.hpp4820644editdlrm
from_python.hpp15050644editdlrm
implicit.hpp15260644editdlrm
object_manager.hpp43490644editdlrm
obj_mgr_arg_from_python.hpp37320644editdlrm
pointer_type_id.hpp16670644editdlrm
pyobject_traits.hpp14330644editdlrm
pyobject_type.hpp11580644editdlrm
pytype_function.hpp32490644editdlrm
pytype_object_mgr_traits.hpp14420644editdlrm
registered.hpp29640644editdlrm
registered_pointee.hpp9380644editdlrm
registrations.hpp30140644editdlrm
registry.hpp20150644editdlrm
return_from_python.hpp42700644editdlrm
rvalue_from_python_data.hpp59430644editdlrm
shared_ptr_deleter.hpp6050644editdlrm
shared_ptr_from_python.hpp19350644editdlrm
shared_ptr_to_python.hpp13530644editdlrm
to_python_function_type.hpp7640644editdlrm
Edit: /usr/include/boost/python/converter/registered.hpp (2964B)
// Copyright David Abrahams 2002. // Copyright Stefan Seefeld 2016. // 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 boost_python_converter_registered_hpp_ #define boost_python_converter_registered_hpp_ #include #include #include #include #include #include #include #if defined(BOOST_PYTHON_TRACE_REGISTRY) \ || defined(BOOST_PYTHON_CONVERTER_REGISTRY_APPLE_MACH_WORKAROUND) # include #endif namespace boost { // You'll see shared_ptr mentioned in this header because we need to // note which types are shared_ptrs in their registrations, to // implement special shared_ptr handling for rvalue conversions. template class shared_ptr; namespace python { namespace converter { struct registration; namespace detail { template struct registered_base { static registration const& converters; }; } template struct registered : detail::registered_base< typename boost::python::detail::add_lvalue_reference< typename boost::python::detail::add_cv::type >::type > { }; # if !BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1310)) // collapses a few more types to the same static instance. MSVC7.1 // fails to strip cv-qualification from array types in typeid. For // some reason we can't use this collapse there or array converters // will not be found. template struct registered : registered {}; # endif // // implementations // namespace detail { inline void register_shared_ptr0(...) { } template inline void register_shared_ptr0(shared_ptr*) { registry::lookup_shared_ptr(type_id >()); } #if !defined(BOOST_NO_CXX11_SMART_PTR) template inline void register_shared_ptr0(std::shared_ptr*) { registry::lookup_shared_ptr(type_id >()); } #endif template inline void register_shared_ptr1(T const volatile*) { detail::register_shared_ptr0((T*)0); } template inline registration const& registry_lookup2(T&(*)()) { detail::register_shared_ptr1((T*)0); return registry::lookup(type_id()); } template inline registration const& registry_lookup1(type) { return registry_lookup2((T(*)())0); } inline registration const& registry_lookup1(type) { detail::register_shared_ptr1((void*)0); return registry::lookup(type_id()); } template registration const& registered_base::converters = detail::registry_lookup1(type()); } }}} // namespace boost::python::converter #endif