Thread: [pygccxml-development] Future freeze
Brought to you by:
mbaas,
roman_yakovenko
From: Roman Y. <rom...@gm...> - 2006-10-07 13:44:45
|
Hi. I would like to freeze Py++ & pygccxml code for introducing new features. The only exception to this is FT feature. I think Py++ accumulated enough changes and we should release them. I ask you to test the source code and to report any bug you have. Also another very important task is documentation. Please read the documentation and report any problem you have with it( spelling errors, not good enough, not clear enough ... ). It could be nice if you say what area of Py++ is still undocumented and should be. Thank you. -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |
From: Allen B. <al...@vr...> - 2006-10-09 23:01:41
|
Roman Yakovenko wrote: >Hi. I would like to freeze Py++ & pygccxml code for introducing new features. >The only exception to this is FT feature. I think Py++ accumulated >enough changes and we should release them. > >I ask you to test the source code and to report any bug you have. Also another >very important task is documentation. Please read the documentation and report >any problem you have with it( spelling errors, not good enough, not >clear enough ... ). >It could be nice if you say what area of Py++ is still undocumented >and should be. > >Thank you. > > > Roman: Will this version of Py++ have a helper method that can completely finalize a class? -Allen |
From: Roman Y. <rom...@gm...> - 2006-10-10 05:47:18
|
On 10/10/06, Allen Bierbaum <al...@vr...> wrote: > Will this version of Py++ have a helper method that can completely > finalize a class? Do you mean to not create wrapper for other cases than virtual and pure virtual member functions? If so than the answer is not, it will not contain such feature. -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |
From: Allen B. <al...@vr...> - 2006-10-10 12:35:14
|
Roman Yakovenko wrote: > On 10/10/06, Allen Bierbaum <al...@vr...> wrote: > >> Will this version of Py++ have a helper method that can completely >> finalize a class? > > > Do you mean to not create wrapper for other cases than virtual and > pure virtual member > functions? If so than the answer is not, it will not contain such > feature. > > I mean don't create a wrapper at all. -Allen |
From: Roman Y. <rom...@gm...> - 2006-10-10 12:40:46
|
On 10/10/06, Allen Bierbaum <al...@vr...> wrote: > Roman Yakovenko wrote: > > > On 10/10/06, Allen Bierbaum <al...@vr...> wrote: > > > >> Will this version of Py++ have a helper method that can completely > >> finalize a class? > > > > > > Do you mean to not create wrapper for other cases than virtual and > > pure virtual member > > functions? If so than the answer is not, it will not contain such > > feature. > > > > > I mean don't create a wrapper at all. No. -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |
From: Allen B. <al...@vr...> - 2006-10-10 13:15:14
|
Ok. Well, then I have a method in goodies that tries to finalize a class. It looks like this: ------------------------------------- def finalize(cls, finalize_pure_virtuals=True): if isinstance(cls, pd.mdecl_wrapper_t): for x in cls: finalize(x) else: matcher = pd.virtuality_type_matcher( pd.VIRTUALITY_TYPES.VIRTUAL ) if finalize_pure_virtuals: matcher = matcher | pd.virtuality_type_matcher( pd.VIRTUALITY_TYPES.PURE_VIRTUAL) members = cls.decls( matcher, decl_type=pd.member_calldef_t, allow_empty=True) members.set_virtuality( pd.VIRTUALITY_TYPES.NOT_VIRTUAL ) -------------------------------------- This gets rid of all the virtuals but there are still some things left over that make Py++ create a wrapper. Any hints at what other things will make Py++ create wrappers? -Allen |
From: Roman Y. <rom...@gm...> - 2006-10-10 13:17:22
|
On 10/10/06, Allen Bierbaum <al...@vr...> wrote: >Any hints at what other things > will make Py++ create wrappers? http://svn.sourceforge.net/viewvc/pygccxml/pyplusplus_dev/pyplusplus/decl_wrappers/class_wrapper.py?view=markup Take a look on is_wrapper_needed method -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |
From: Allen B. <al...@vr...> - 2006-10-10 13:51:13
|
Roman Yakovenko wrote: > On 10/10/06, Allen Bierbaum <al...@vr...> wrote: > >> Any hints at what other things >> will make Py++ create wrappers? > > > http://svn.sourceforge.net/viewvc/pygccxml/pyplusplus_dev/pyplusplus/decl_wrappers/class_wrapper.py?view=markup > > > Take a look on is_wrapper_needed method > Thanks. That is a very helpful method. :) I understand most of the reasons in there, but I don't understand any of the member variable reasons. Why does a bitfield, T*, T&, or array member variable require a wrapper to be created? -Allen |
From: Roman Y. <rom...@gm...> - 2006-10-10 13:56:24
|
On 10/10/06, Allen Bierbaum <al...@vr...> wrote: > Roman Yakovenko wrote: > > > On 10/10/06, Allen Bierbaum <al...@vr...> wrote: > > > >> Any hints at what other things > >> will make Py++ create wrappers? > > > > > > http://svn.sourceforge.net/viewvc/pygccxml/pyplusplus_dev/pyplusplus/decl_wrappers/class_wrapper.py?view=markup > > > > > > Take a look on is_wrapper_needed method > > > Thanks. That is a very helpful method. :) > > I understand most of the reasons in there, but I don't understand any of > the member variable reasons. Why does a bitfield, T*, T&, or array > member variable require a wrapper to be created? bitfield - you can not take reference to the bit, get\set functions are needed T*, & - you should instruct Boost.Python how to manage life time of the variable - you have to suppy call policies array - boost.python does not supoprt arrays, so there is a need to construct instance of the class that exposes array to Python. -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |