[pygccxml-commit] source/pyplusplus __init__.py,1.24,1.25
Brought to you by:
mbaas,
roman_yakovenko
From: Matthias B. <mb...@us...> - 2006-03-09 10:59:44
|
Update of /cvsroot/pygccxml/source/pyplusplus In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17585 Modified Files: __init__.py Log Message: Added a top-level module doc string that contains the text for the entry page of the pyplusplus docs. The text contains a little introduction into (low level) pyplusplus usage and pointers to relevant classes/modules. Index: __init__.py =================================================================== RCS file: /cvsroot/pygccxml/source/pyplusplus/__init__.py,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** __init__.py 28 Feb 2006 07:31:32 -0000 1.24 --- __init__.py 9 Mar 2006 10:59:41 -0000 1.25 *************** *** 4,7 **** --- 4,46 ---- # http://www.boost.org/LICENSE_1_0.txt) + """pyplusplus - Boost.Python code generator + ======================================== + + This package (together with the accompanying pygccxml package and + U{Boost.Python<http://www.boost.org/libs/python/doc/index.html>}) + assists you in creating Python bindings for a C/C++ library. This is + done by parsing a set of header files that contain all the + stuff you want to expose in Python. The result of this parsing + step is a I{declaration tree} that represents all declarations found + in the headers. You can then modify (decorate) this tree to customize + the bindings. After that, a I{code creators} tree is created where + each node represents a block of C++ source code. As a last step, these + source code blocks are finally written into one or more C++ source + files which can then be compiled to generate the final Python module. + + In general, the following steps have to be done: + + 1. B{Parsing the header files}: This is done by the pygccxml package. + You either use the pygccxml.parser.parse() function or the + pygccxml.parser.project_reader_t class. + Note: Currently, you B{must} pass a L{dwfactory_t<decl_wrappers.dwfactory_t>} + object to the parser so that the resulting declaration tree is composed + of the decl_wrapper nodes in the L{decl_wrappers} sub-package instead + of the declaration nodes from pygccxml. + + 2. B{Creating the code creators tree}: This is done by the + L{creator_t<module_creator.creator_t>} class in the L{module_creator} + sub-package. The code creators tree is composed of the nodes defined + in the L{code_creators} sub-package. + + 3. B{Writing the source files}: This is done by the functions in the + L{file_writers} sub-package. + + There is a high-level API which is currently work in progress and + which can be found in the L{pypp_api<experimental.pypp_api>} module. + + + """ + import code_creators import file_writers *************** *** 13,17 **** import module_builder - __version__ = '0.7.0' --- 52,55 ---- |