On Thu, May 6, 2010 at 10:24 AM, vishal bayskar
<vishal.bays...@nechclst.in> wrote:
>
> Actually I need to extract the item present in the list, so I am trying to
> use methonds of list (just for an example I tried push_back in the below
> example).

I don't understand why do you struggle. The "exposed via an indexing
suite" method allows you to modify and iterate over the list using the
well defined and documented protocol. If you need to use:
* the original function names
  - you can expose it via indexing suite and then add aliases to the functions
* the original function functionality or some unexposed functions
  - you will have to extend the exposed class. Boost.Python interface
allows you to achieve this.

void mylist_push_back( AList& alist, const MyItem& item ){
     alist.push_back( item );
}

...

class_< AList >
    < register indexing suite functionality >
    .def( "push_back", &mylist_push_back )
    ...

>From Python, your user will not see any difference:

alist = AList()
alist.push_back|( .... )

HTH

-- 
Roman Yakovenko
C++ Python language binding
http://www.language-binding.net/
_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

Reply via email to