2
0
mirror of https://github.com/boostorg/python.git synced 2026-01-21 17:12:22 +00:00
Files
python/test/bienstman4.cpp
Dave Abrahams 865ef2ab7f Support for free-function def() invocation (no module object)
Fix bugs relying on initialization of objects in the Python DLL


[SVN r15139]
2002-09-03 05:51:15 +00:00

40 lines
914 B
C++

// Copyright David Abrahams 2002. Permission to copy, use,
// modify, sell and distribute this software is granted provided this
// copyright notice appears in all copies. This software is provided
// "as is" without express or implied warranty, and with no claim as
// to its suitability for any purpose.
#include <boost/python/module_init.hpp>
#include <boost/python/def.hpp>
#include <boost/python/class.hpp>
#include <boost/python/implicit.hpp>
struct Type1 {};
struct Term {Term(Type1 const&) {} };
struct Expression {void add(Term const&) {} };
BOOST_PYTHON_MODULE_INIT(bienstman4_ext)
{
using namespace boost::python;
using boost::mpl::type_list;
implicitly_convertible<Type1,Term>();
class_<Expression>("Expression")
.def("add", &Expression::add)
;
class_<Type1>("T1")
;
class_<Term>("Term", args<Type1&>())
;
Type1 t1;
Expression e;
e.add(t1);
}