1414# include < boost/python/type_id.hpp>
1515# include < boost/python/detail/wrap_function.hpp>
1616# include < boost/python/detail/member_function_cast.hpp>
17- # include < boost/python/detail/module_base.hpp>
1817# include < boost/python/object/class_converters.hpp>
1918# include < boost/type_traits/ice.hpp>
2019# include < boost/type_traits/same_traits.hpp>
@@ -87,12 +86,12 @@ class class_ : public objects::class_base
8786 public:
8887 // Automatically derive the class name - only works on some
8988 // compilers because type_info::name is sometimes mangled (gcc)
90- class_ (base const & parent_class = empty_class_base() );
89+ class_ ();
9190
9291 // Construct with the class name. [ Would have used a default
9392 // argument but gcc-2.95.2 choked on typeid(T).name() as a default
9493 // parameter value]
95- class_ (char const * name, base const & parent_class = empty_class_base() );
94+ class_ (char const * name);
9695
9796
9897 // Wrap a member function or a non-member function which can take
@@ -196,22 +195,6 @@ class class_ : public objects::class_base
196195
197196 self& setattr (char const * name, handle<> const &);
198197
199- // add to module
200- self& add (module &m)
201- {
202- // redundant
203- // m.add(*this);
204- return *this ;
205- }
206-
207- // add to current module
208- self& add ()
209- {
210- // redundant
211- // boost::python::add(*this);
212- return *this ;
213- }
214-
215198 private: // types
216199 typedef objects::class_id class_id;
217200
@@ -248,7 +231,7 @@ class class_ : public objects::class_base
248231// implementations
249232//
250233template <class T , class X1 , class X2 , class X3 >
251- inline class_<T,X1,X2,X3>::class_(base const & parent_class )
234+ inline class_<T,X1,X2,X3>::class_()
252235 : base(typeid (T).name(), id_vector::size, id_vector().ids)
253236{
254237 // register converters
@@ -258,16 +241,10 @@ inline class_<T,X1,X2,X3>::class_(base const& parent_class)
258241 mpl::bool_t <is_copyable>()
259242 , objects::select_holder<T,held_type>((held_type*)0 ).get ()
260243 , this ->object ());
261-
262- // get the context to add the class to
263- handle<> parent (parent_class.object () ? handle<>(parent_class.object ()) :
264- base::get_class_context_object (typeid (T).name (), object ()));
265- // add the class to the current module
266- boost::python::detail::module_base::add (object (), parent);
267244}
268245
269246template <class T , class X1 , class X2 , class X3 >
270- inline class_<T,X1,X2,X3>::class_(char const * name, base const & parent_class )
247+ inline class_<T,X1,X2,X3>::class_(char const * name)
271248 : base(name, id_vector::size, id_vector().ids)
272249{
273250 // register converters
@@ -277,14 +254,9 @@ inline class_<T,X1,X2,X3>::class_(char const* name, base const& parent_class)
277254 mpl::bool_t <is_copyable>()
278255 , objects::select_holder<T,held_type>((held_type*)0 ).get ()
279256 , this ->object ());
280-
281- // get the context to add the class to
282- handle<> parent (parent_class.object () ? handle<>(parent_class.object ()) :
283- base::get_class_context_object (name, object ()));
284- // add the class to the current module
285- boost::python::detail::module_base::add (object (), parent);
286257}
287258
259+
288260template <class T , class X1 , class X2 , class X3 >
289261inline class_<T,X1,X2,X3>& class_<T,X1,X2,X3>::add_property(char const * name, handle<> const & fget)
290262{
0 commit comments