// 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) #include #include #include #include #include "test_class.hpp" #if __GNUC__ != 2 # include #else # include #endif typedef test_class<> X; typedef test_class<1> Y; std::ostream& operator<<(std::ostream& s, X const& x) { return s << x.value(); } std::ostream& operator<<(std::ostream& s, Y const& x) { return s << x.value(); } BOOST_PYTHON_MODULE(nested_ext) { using namespace boost::python; // Establish X as the current scope. scope x_class = class_("X", init()) .def(str(self)) ; // Y will now be defined in the current scope class_("Y", init()) .def(str(self)) ; } #include "module_tail.cpp"