36 lines
1023 B
C++
36 lines
1023 B
C++
|
// Copyright David Abrahams 2004. 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 WRAPPER_DWA2004720_HPP
|
||
|
# define WRAPPER_DWA2004720_HPP
|
||
|
|
||
|
# include <boost/python/detail/wrapper_base.hpp>
|
||
|
# include <boost/python/override.hpp>
|
||
|
# include <boost/python/converter/registered.hpp>
|
||
|
# include <boost/python/detail/sfinae.hpp>
|
||
|
|
||
|
namespace boost { namespace python {
|
||
|
|
||
|
template <class T>
|
||
|
class wrapper : public detail::wrapper_base
|
||
|
{
|
||
|
public:
|
||
|
// Do not touch this implementation detail!
|
||
|
typedef T _wrapper_wrapped_type_;
|
||
|
|
||
|
protected:
|
||
|
override get_override(char const* name) const
|
||
|
{
|
||
|
typedef detail::wrapper_base base;
|
||
|
converter::registration const& r
|
||
|
= converter::registered<T>::converters;
|
||
|
PyTypeObject* type = r.get_class_object();
|
||
|
|
||
|
return this->base::get_override(name, type);
|
||
|
}
|
||
|
};
|
||
|
|
||
|
}} // namespace boost::python
|
||
|
|
||
|
#endif // WRAPPER_DWA2004720_HPP
|