[C++-sig] Member function bp::optional? Or workaround?
Charles Solar
charlessolar at gmail.com
Tue Jan 12 21:06:28 CET 2010
Looks perfect, thanks much.
On Tue, Jan 12, 2010 at 2:01 PM, troy d. straszheim <troy at resophonic.com>wrote:
> Charles Solar wrote:
>
>> Well I want to define the overloads myself anyway, I just do not know how
>> to properly setup the small wrapper that will work. In the doc it tells you
>> how to make flat function wrappers, but nothing on member function wrappers.
>> I am unsure how I am supposed to handle the this pointer, for example.
>> So idealy what I would like to know is what the macro does so I can
>> manually write out the wrappers myself.
>>
>> And I have tried using Py++, it does not handle the default argument, it
>> just puts the call in there and python still requires the param to be there.
>>
>>
> Personally I hate that overload-wrapping macro thing. Here's one way to do
> it:
>
> struct T
> {
> void bar(int i) { cout << "bar(" << i << ")\n"; }
> void bar() { cout << "bar\n"; }
> };
>
> //
> // use 'self' for 'this' for the sake of pythonicism
> //
> void bar_int (T* self, int i) { self->bar(i); }
> void bar_void(T* self) { self->bar(); }
>
> BOOST_PYTHON_MODULE(foop)
> {
> class_<T>("T")
> .def("bar", bar_int)
> .def("bar", bar_void)
> ;
> }
>
> -t
>
>
> _______________________________________________
> Cplusplus-sig mailing list
> Cplusplus-sig at python.org
> http://mail.python.org/mailman/listinfo/cplusplus-sig
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/cplusplus-sig/attachments/20100112/93697a36/attachment-0001.htm>
More information about the Cplusplus-sig
mailing list