[pygccxml-development] recent changes to pygccxml\pyplusplus
Brought to you by:
mbaas,
roman_yakovenko
From: Roman Y. <rom...@gm...> - 2006-02-28 15:33:14
|
Hi. In order to create more user friendly API I had to make few changes to both projects. Here is a list of changes: Allen changes: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D - Added verbose flag for additional output - pygccxml: parser (through parser config), project_reader, cache - Added timing information to output - Outputs gccxml command line Accepted, but in future we will replace print statemnet with logging module =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D - Cache refactoring Accepted =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Detection of gccxml errors Not accepted, it does not work with my version of gccxml, may be we need to define with what version of gcc xml we are working? =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D - Decl Decorator Not accepted. I created declaration wrapper for every declaration. See pyplusplus\decl_wrappers, But decorators is much better name. Should we rename them? =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D - Additional information when finalize fails Not accepted. The reason is simple, I think that I don't have to provide this functionality on code creators at all. I will remove it. If you don't want to create a wrapper you will say it using standard way - customizing declarations. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D - Extended multiple file writer Accepted as is. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Spelling fixes Accepted. Please fix as much as you can :-) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D The latest versions of gccxml mark all classes and structs as artificial. Accepted =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Added/extended comments in some places Accepted =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D My changes: pyplusplus: New classes that derives from declaration_t class. Every derived decl_wrapper has relevant properties for customizing code creators\module_creator. All code creators properties it is just an redirection to decl_wrapper properties. pygccxml: For every declaration class I am going to add *_matcher_t classes. This will help user to find declaration by type using some predefined criterias. Also we should add to pygccxml all code that Allen wrote in filter.py modul= e. But it should be changed a little to use pygccxml coding convention + instead of using flags, I think, it should use isinstance function. I also added module_builder module. Please take a look on it. Thanks -- Roman Yakovenko C++ Python language binding http://www.language-binding.net/ |