[pygccxml-commit] SF.net SVN: pygccxml:[1652] pyplusplus_dev/docs
Brought to you by:
mbaas,
roman_yakovenko
From: <rom...@us...> - 2009-02-02 20:40:45
|
Revision: 1652 http://pygccxml.svn.sourceforge.net/pygccxml/?rev=1652&view=rev Author: roman_yakovenko Date: 2009-02-02 20:40:36 +0000 (Mon, 02 Feb 2009) Log Message: ----------- sphinx Modified Paths: -------------- pygccxml_dev/docs/apidocs/declarations.rest pygccxml_dev/docs/definition.irest pygccxml_dev/docs/design.rest pygccxml_dev/docs/download.rest pygccxml_dev/docs/history/history.rest pygccxml_dev/docs/links.rest pygccxml_dev/docs/pygccxml.rest pygccxml_dev/docs/query_interface.rest pygccxml_dev/docs/upgrade_issues.rest pygccxml_dev/docs/users.rest pygccxml_dev/pygccxml/declarations/__init__.py pygccxml_dev/pygccxml/declarations/algorithm.py pygccxml_dev/pygccxml/declarations/call_invocation.py pygccxml_dev/pygccxml/declarations/calldef.py pygccxml_dev/pygccxml/declarations/class_declaration.py pygccxml_dev/pygccxml/declarations/cpptypes.py pygccxml_dev/pygccxml/declarations/declaration.py pygccxml_dev/pygccxml/declarations/matchers.py pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py pygccxml_dev/pygccxml/declarations/namespace.py pygccxml_dev/pygccxml/declarations/scopedef.py pygccxml_dev/pygccxml/declarations/templates.py pygccxml_dev/pygccxml/declarations/type_traits.py pygccxml_dev/pygccxml/declarations/variable.py pyplusplus_dev/docs/comparisons/pyste.rest pyplusplus_dev/docs/documentation/architecture.rest pyplusplus_dev/docs/documentation/ctypes/ctypes_integration.rest pyplusplus_dev/docs/documentation/ctypes/this_and_sizeof.rest pyplusplus_dev/docs/documentation/ctypes/unions.rest pyplusplus_dev/docs/documentation/ctypes/variables.rest pyplusplus_dev/docs/documentation/how_to/best_practices.rest pyplusplus_dev/docs/documentation/inserting_code.rest pyplusplus_dev/docs/documentation/split_module.rest pyplusplus_dev/docs/documentation/tutorials/module_builder/module_builder.rest pyplusplus_dev/docs/documentation/tutorials/tutorials.rest pyplusplus_dev/docs/documentation/warnings.rest pyplusplus_dev/docs/download.rest pyplusplus_dev/docs/examples/boost/boost.rest pyplusplus_dev/docs/examples/easybmp/easybmp.rest pyplusplus_dev/docs/history/history.rest pyplusplus_dev/docs/pyplusplus.rest pyplusplus_dev/docs/troubleshooting_guide/smart_ptrs/smart_ptrs.rest Modified: pygccxml_dev/docs/apidocs/declarations.rest =================================================================== --- pygccxml_dev/docs/apidocs/declarations.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/apidocs/declarations.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -72,8 +72,8 @@ :members: :show-inheritance: -ecl_printer ------------ +decl_printer +------------ .. automodule:: pygccxml.declarations.decl_printer :members: Modified: pygccxml_dev/docs/definition.irest =================================================================== --- pygccxml_dev/docs/definition.irest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/definition.irest 2009-02-02 20:40:36 UTC (rev 1652) @@ -1,9 +1,9 @@ -The purpose of the `GCC-XML`_ extension is to generate an XML description of a +The purpose of the `GCC-XML`_ extension is to generate an XML description of a C++ program from GCC's internal representation. - -- Introduction to `GCC-XML`_ + -- Introduction to `GCC-XML`_ -The purpose of `pygccxml`_ is to read a generated file and provide a simple -framework to navigate C++ declarations, using Python classes. +The purpose of `pygccxml` is to read a generated file and provide a simple +framework to navigate C++ declarations, using Python classes. .. _`GCC-XML` : http://www.gccxml.org Modified: pygccxml_dev/docs/design.rest =================================================================== --- pygccxml_dev/docs/design.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/design.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -6,7 +6,7 @@ The view from 10000 fits ------------------------ -`pygccxml`_ has 3 packages: +:doc:`pygccxml <pygccxml>` has 3 packages: * ``declarations`` package defines classes that describe C++ declarations and types @@ -44,7 +44,7 @@ a pointer or a reference? Or does a type have a trivial constructor, or a const-qualifier? -`pygccxml`_ implements a lot of functionality from the library: +:doc:`pygccxml <pygccxml>` implements a lot of functionality from the library: * a lot of algorithms were implemented @@ -147,7 +147,7 @@ to 2 classes: 1. ``scanner_t`` - this class scans the "XML" file, generated by `GCC-XML`_ and - creates `pygccxml`_ declarations and types classes. After the xml file has + creates :doc:`pygccxml <pygccxml>` declarations and types classes. After the xml file has been processed declarations and type class instances keeps references to each other using `GCC-XML`_ generated ids. @@ -160,7 +160,7 @@ pretty quick. ``project_reader_t`` - think about this class as a linker. In most cases you work -with few source files. GCC-XML does not supports this mode of work. So, `pygccxml`_ +with few source files. GCC-XML does not supports this mode of work. So, :doc:`pygccxml <pygccxml>` implements all functionality needed to parse few source files at once. ``project_reader_t`` implements 2 different algorithms, that solves the problem: @@ -242,9 +242,9 @@ In some cases, ``directory_cache_t`` class gives much better performance, than ``file_cache_t``. Many thanks to Matthias Baas for its implementation. -**Warning**: when `pygccxml`_ writes information to files, using cache classes, +**Warning**: when :doc:`pygccxml <pygccxml>` writes information to files, using cache classes, it does not write any version information. It means, that when you upgrade -`pygccxml`_ you have to delete all your cache files. Otherwise you will get very +:doc:`pygccxml <pygccxml>` you have to delete all your cache files. Otherwise you will get very strange errors. For example: missing attribute. @@ -264,9 +264,9 @@ void fix_enum( ns1::ns2::fruit arg=ns1::ns2::apple ); `GCC-XML`_ will report the default value of ``arg`` as ``apple``. Obviously -this in an error. `pygccxml`_ knows how to fix this bug. +this in an error. :doc:`pygccxml <pygccxml>` knows how to fix this bug. -This is not the only bug, which could be fixed, there are few of them. `pygccxml`_ +This is not the only bug, which could be fixed, there are few of them. :doc:`pygccxml <pygccxml>` introduces few classes, which knows how to deal with specific bug. More over, those bugs are fixed, only if I am 101% sure, that this is the right thing to do. @@ -274,11 +274,11 @@ Summary ------- -That's all. I hope I was clear, at least I tried. Any way, `pygccxml`_ is an open +That's all. I hope I was clear, at least I tried. Any way, :doc:`pygccxml <pygccxml>` is an open source project. You always can take a look on the source code. If you need more information please read API documentation. -.. _`pygccxml`: ./pygccxml.html + .. _`SourceForge`: http://sourceforge.net/index.php .. _`Python`: http://www.python.org .. _`GCC-XML`: http://www.gccxml.org Modified: pygccxml_dev/docs/download.rest =================================================================== --- pygccxml_dev/docs/download.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/download.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -6,11 +6,11 @@ pygccxml on SourceForge ------------------------- -`pygccxml`_ project is hosted on SourceForge. Using SourceForge services you +:doc:`pygccxml <pygccxml>` project is hosted on SourceForge. Using SourceForge services you can: 1) get access to source code -2) get access to latest release version of `pygccxml`_ +2) get access to latest release version of :doc:`pygccxml <pygccxml>` ----------------- @@ -34,20 +34,20 @@ There are few different ways to install GCC-XML on your system: 1. If you use Linux, than I am almost sure your system has "gccxml" package. - Consider to install it using "native"(rpm, deb, portage) packaging system. + Consider to install it using "native"(rpm, deb, portage) packaging system. .. line separator -2. Another option is to install it from the source code. See `instructions`_ +2. Another option is to install it from the source code. See `instructions`_ provided by Brad King, the author of `GCC-XML`_. Installation from sources - is supported for Windows, Linux and Mac platforms. + is supported for Windows, Linux and Mac platforms. .. _`instructions` : http://gccxml.org/HTML/Install.html 3. You can use `GCC-XML`_ installer created by me. Go to `download page`_ and get - `"gccxml_installer.zip"`_ file. You will find installation instructions within - the file. The setup is basically small Python script, which installs `GCC-XML`_ - to the specified directory. It works pretty well for me on Linux and Windows. + `"gccxml_installer.zip"`_ file. You will find installation instructions within + the file. The setup is basically small Python script, which installs `GCC-XML`_ + to the specified directory. It works pretty well for me on Linux and Windows. You don't have to download CMake build system or anything else. .. _`download page` : http://sourceforge.net/project/showfiles.php?group_id=118209&package_id=146545 @@ -56,11 +56,11 @@ pygccxml -------- In command prompt or shell change current directory to be "pygccxml-X.Y.Z". -"X.Y.Z" is version of `pygccxml`_. Type the following command: +"X.Y.Z" is version of :doc:`pygccxml <pygccxml>`. Type the following command: | ``python setup.py install`` -After this command complete, you should have installed `pygccxml`_ package. +After this command complete, you should have installed :doc:`pygccxml <pygccxml>` package. ------------ Dependencies @@ -68,5 +68,4 @@ * `GCC-XML`_ -.. _`pygccxml` : ./../pygccxml/pygccxml.html .. _`GCC-XML`: http://www.gccxml.org Modified: pygccxml_dev/docs/history/history.rest =================================================================== --- pygccxml_dev/docs/history/history.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/history/history.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -120,7 +120,7 @@ Version 0.9.0 ------------- -1. Performance was improved. `pygccxml`_ is now 30-50% faster. The improvement +1. Performance was improved. :doc:`pygccxml <../pygccxml>` is now 30-50% faster. The improvement was achieved by using `cElementTree`_ package, ``iterparse`` functionality, instead of standard XML SAX API. If `cElementTree`_ package is not available, the built-in XML SAX package is used. @@ -188,7 +188,7 @@ types and declarations it depends on. 2. ``signed char`` and ``char`` are two different types. This bug was fixed and - now `pygccxml`_ treats them right. Many thanks to Gaetan Lehmann for reporting + now :doc:`pygccxml <../pygccxml>` treats them right. Many thanks to Gaetan Lehmann for reporting the bug. 3. Declarations, read from GCC-XML generated file, could be saved in cache. @@ -225,7 +225,7 @@ small example that reproduced the error. 2. Huge speed improvement has been achieved (x10). Allen Bierbaum suggested to - save and reuse results of different `pygccxml`_ algorithms: + save and reuse results of different :doc:`pygccxml <../pygccxml>` algorithms: * ``declarations.remove_alias`` * ``declarations.full_name`` @@ -259,7 +259,7 @@ Version 0.8.1 ------------- -1. `pygccxml`_ has been ported to MacOS X. Many thanks to Darren Garnier! +1. :doc:`pygccxml <../pygccxml>` has been ported to MacOS X. Many thanks to Darren Garnier! 2. New type traits have been added: @@ -327,7 +327,7 @@ #instead of op = cls.operator( symbol='<' ) -5. `pygccxml`_ improved a lot functionality related to providing feedback to user: +5. :doc:`pygccxml <../pygccxml>` improved a lot functionality related to providing feedback to user: * every package has its own logger @@ -364,10 +364,10 @@ Version 0.8 ----------- -1. `pygccxml`_ now has power "select" interface. Read more about this cool feature +1. :doc:`pygccxml <../pygccxml>` now has power "select" interface. Read more about this cool feature in tutorials. -2. Improved support for template instantiations. `pygccxml`_ now take into +2. Improved support for template instantiations. :doc:`pygccxml <../pygccxml>` now take into account demangled name of declarations. Please refer to documentation for more explanantion. @@ -429,8 +429,8 @@ easily extend functionality provided by built-in declarations. 6. Sometimes, there is a need to find a declaration that match some criteria. - The was such functionality in `pygccxml`_, but it was too limited. This - release fix the situation. `pygccxml`_ adds a set of classes that will help + The was such functionality in :doc:`pygccxml <../pygccxml>`, but it was too limited. This + release fix the situation. :doc:`pygccxml <../pygccxml>` adds a set of classes that will help you to deal with this problem. 7. New cache - ``parser.directory_cache_t`` has been implemented. @@ -463,8 +463,8 @@ 12. Documentation. Allen Bierbaum and Matthias Baas contributed so much in this area. Almost every public function/class has now documentation string. -13. Logging functionality has been added. `pygccxml`_ creates new logger - "pygccxml". Now it is possible to see what `pygccxml`_ is doing right now. +13. Logging functionality has been added. :doc:`pygccxml <../pygccxml>` creates new logger + "pygccxml". Now it is possible to see what :doc:`pygccxml <../pygccxml>` is doing right now. 14. I am sure I forgot something. @@ -547,9 +547,8 @@ time. 8. There are some cases when `GCC-XML`_ reports *"restricted"*. In this case - `pygccxml`_ replaces *"restricted"* with *"volatile"*. + :doc:`pygccxml <../pygccxml>` replaces *"restricted"* with *"volatile"*. -.. _`pygccxml`: ./../pygccxml.html .. _`SourceForge`: http://sourceforge.net/index.php .. _`GCC-XML`: http://www.gccxml.org Modified: pygccxml_dev/docs/links.rest =================================================================== --- pygccxml_dev/docs/links.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/links.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -17,4 +17,4 @@ .. _`XTI An Extended Type Information Library` : http://lcgapp.cern.ch/project/architecture/XTI_accu.pdf -.. _`pygccxml`: ./pygccxml.html + Modified: pygccxml_dev/docs/pygccxml.rest =================================================================== --- pygccxml_dev/docs/pygccxml.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/pygccxml.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -17,12 +17,12 @@ ------------------------ What can you do with it? ------------------------ -Using `pygccxml`_ you can: +Using :doc:`pygccxml <pygccxml>` you can: * parse C++ source code * create a powerful code generator - + `Py++`_ is heavily based on `pygccxml`_ + + `Py++`_ is heavily based on :doc:`pygccxml <pygccxml>` + generate `WSDL`_ file from sources + ... @@ -36,7 +36,7 @@ Query interface --------------- -`pygccxml`_ provides simple and powerful API to query declarations tree. How many +:doc:`pygccxml <pygccxml>` provides simple and powerful API to query declarations tree. How many lines is needed to write the following query? :: @@ -63,7 +63,7 @@ Type traits ----------- -`pygccxml`_ provides a lot of functionality to analyze C++ types and relationship +:doc:`pygccxml <pygccxml>` provides a lot of functionality to analyze C++ types and relationship between them. For more information please refer to `design`__ document or API documentation. Just a few names of algorithms: @@ -96,7 +96,7 @@ * parse each file separately and then join the results The difference between these approaches is the caching algorithm used in the -second case. `pygccxml`_ supports both of them. Actually `pygccxml`_ supports +second case. :doc:`pygccxml <pygccxml>` supports both of them. Actually :doc:`pygccxml <pygccxml>` supports more caching strategies, read the API documentation for more information. @@ -110,7 +110,7 @@ Test environment ---------------- -`pygccxml`_ comes with comprehensive unit tests. They are executed on Windows XP +:doc:`pygccxml <pygccxml>` comes with comprehensive unit tests. They are executed on Windows XP and `Ubuntu`_ Linux operating systems. In most cases Python 2.5 and 2.6 are used. All in all, `pygccxml` has more than 230 tests. @@ -134,7 +134,7 @@ .. _`WSDL`: http://www.w3.org/TR/wsdl .. _`Py++`: ./../pyplusplus/pyplusplus.html -.. _`pygccxml`: ./pygccxml.html + .. _`SourceForge`: http://sourceforge.net/index.php .. _`Docutils`: http://docutils.sourceforge.net .. _`Python`: http://www.python.org Modified: pygccxml_dev/docs/query_interface.rest =================================================================== --- pygccxml_dev/docs/query_interface.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/query_interface.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -6,7 +6,7 @@ Introduction ------------ You parsed the source files. Now you have to do some real work with the extracted -information, right? `pygccxml`_ provides very powerful and simple interface to +information, right? :doc:`pygccxml <pygccxml>` provides very powerful and simple interface to query about extracted declarations. Just an example. I want to select all member functions, which have 2 arguments. @@ -161,11 +161,11 @@ ``RECURSIVE_DEFAULT`` variable. Its initial value is ``True``. So, if you don't pass ``recursive`` argument, the value of ``RECURSIVE_DEFAULT`` variable will be used. This "yet another level of indirection" allows you to configure - `pygccxml`_ "select" functions in one place for all project. + :doc:`pygccxml <pygccxml>` "select" functions in one place for all project. * ``allow_empty`` - Python boolean object, it says `pygccxml`_ what to do if query returns empty. + Python boolean object, it says :doc:`pygccxml <pygccxml>` what to do if query returns empty. If ``allow_empty`` is ``False``, then exception ``RuntimeError( "Multi declaration query returned 0 declarations." )`` @@ -285,7 +285,7 @@ .. _`Boost.Python`: http://boost.org/libs/python/doc/tutorial/doc/html/index.html .. _`call policies`: http://boost.org/libs/python/doc/tutorial/doc/html/python/functions.html#python.call_policies .. _`Call policies`: http://boost.org/libs/python/doc/tutorial/doc/html/python/functions.html#python.call_policies -.. _`pygccxml`: ./pygccxml.html + .. _`Py++`: ./../pyplusplus/pyplusplus.html .. _`SourceForge`: http://sourceforge.net/index.php .. _`Python`: http://www.python.org Modified: pygccxml_dev/docs/upgrade_issues.rest =================================================================== --- pygccxml_dev/docs/upgrade_issues.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/upgrade_issues.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -73,7 +73,7 @@ <Typedef id="_52" name="mvar_ptr_t" type="_139" /> <OffsetType id="_139" basetype="_92" type="_131" size="32" align="32"/> -`pygccxml`_ handles this issue automatically, you don't have to change your code. +:doc:`pygccxml <pygccxml>` handles this issue automatically, you don't have to change your code. ----------------------- Constant variable value @@ -90,7 +90,7 @@ GCC-XML 0.9 will report the ``initialized`` value as ``10122004ul``, while GCC-XML 0.7 as ``10122004``. -`pygccxml`_ handles this problem automatically, you don't have to change your code. +:doc:`pygccxml <pygccxml>` handles this problem automatically, you don't have to change your code. ------------------------------------------ Free and member function default arguments @@ -190,7 +190,7 @@ <Argument name="types" type="_3096" default="std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(((const std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >&)((const std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)(& std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >()))))"/> -Basically `pygccxml`_ can't help you here. The good news is that you always can +Basically :doc:`pygccxml <pygccxml>` can't help you here. The good news is that you always can change the default value expression from the script: .. code-block:: python @@ -230,11 +230,11 @@ class demangled name item_t<3740067437l> item_t<3740067437ul> ==================== ====================== ======================= -`pygccxml`_ uses class demangled name as a "name" of the class. This was done to +:doc:`pygccxml <pygccxml>` uses class demangled name as a "name" of the class. This was done to overcome few bugs GCC-XML has, when it works on libraries with extreme usage of templates. -As you can see the name of the class is different. `pygccxml`_ is unable to help +As you can see the name of the class is different. :doc:`pygccxml <pygccxml>` is unable to help you in such situations. I suggest you to use query API strict mode. This is the default one. If the class/declaration with the given name could not be found, it will raise an error with clear description of the problem. @@ -243,6 +243,6 @@ of the class/declaration from it. -.. _`pygccxml`: ./pygccxml.html + .. _`Python`: http://www.python.org .. _`GCC-XML`: http://www.gccxml.org Modified: pygccxml_dev/docs/users.rest =================================================================== --- pygccxml_dev/docs/users.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/docs/users.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -21,16 +21,14 @@ - http://cysquatch.net/blog/2007/09/01/c-code-metrics-with-pygccxml - `pygccxml`_ is used to calculate the Weighted Methods per Class (WMC) metric. + :doc:`pygccxml <pygccxml>` is used to calculate the Weighted Methods per Class (WMC) metric. - http://www.garagegames.com/blogs/4280/13907 - `pygccxml`_ is used to generate input files for `SIP`_ code generator. + :doc:`pygccxml <pygccxml>` is used to generate input files for `SIP`_ code generator. .. _`SIP` : http://www.riverbankcomputing.com/software/sip/intro - http://blogs.sun.com/thorsten/entry/more_on_source_code_grokking Short listing of C++ parsers and their description. - - .. _`pygccxml` : ./pygccxml.html Modified: pygccxml_dev/pygccxml/declarations/__init__.py =================================================================== --- pygccxml_dev/pygccxml/declarations/__init__.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/__init__.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -233,29 +233,29 @@ #make matchers to look more like functors or_matcher = or_matcher_t -"""see :class:or_matcher for documentation""" +"""see :class:`or_matcher_t` for documentation""" and_matcher = and_matcher_t -"""see :class:and_matcher for documentation""" +"""see :class:`and_matcher_t` for documentation""" not_matcher = not_matcher_t -"""see :class:not_matcher for documentation""" +"""see :class:`not_matcher_t` for documentation""" declaration_matcher = declaration_matcher_t -"""see :class:declaration_matcher for documentation""" +"""see :class:`declaration_matcher_t` for documentation""" calldef_matcher = calldef_matcher_t -"""see :class:calldef_matcher for documentation""" +"""see :class:`calldef_matcher_t` for documentation""" namespace_matcher = namespace_matcher_t -"""see :class:namespace_matcher for documentation""" +"""see :class:`namespace_matcher_t` for documentation""" variable_matcher = variable_matcher_t -"""see :class:variable_matcher for documentation""" +"""see :class:`variable_matcher_t` for documentation""" regex_matcher = regex_matcher_t -"""see :class:regex_matcher for documentation""" +"""see :class:`regex_matcher_t` for documentation""" access_type_matcher = access_type_matcher_t -"""see :class:access_type_matcher for documentation""" +"""see :class:`access_type_matcher_t` for documentation""" operator_matcher = operator_matcher_t -"""see :class:operator_matcher for documentation""" +"""see :class:`operator_matcher_t` for documentation""" custom_matcher = custom_matcher_t -"""see :class:custom_matcher for documentation""" +"""see :class:`custom_matcher_t` for documentation""" virtuality_type_matcher = virtuality_type_matcher_t -"""see :class:virtuality_type_matcher for documentation""" +"""see :class:`virtuality_type_matcher_t` for documentation""" from matcher import matcher Modified: pygccxml_dev/pygccxml/declarations/algorithm.py =================================================================== --- pygccxml_dev/pygccxml/declarations/algorithm.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/algorithm.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -12,7 +12,7 @@ returns a list of parent declarations names :param decl: declaration for which declaration path should be calculated - :type decl: :class:declaration_t + :type decl: :class:`declaration_t` :rtype: [names], where first item contains top parent name and last item contains decl name @@ -42,7 +42,7 @@ have default value :param decl: declaration for which declaration path should be calculated - :type decl: :class:declaration_t + :type decl: :class:`declaration_t` :rtype: [names], where first item contains top parent name and last item contains decl name @@ -75,9 +75,9 @@ returns a reference to a named parent declaration :param decl: the child declaration - :type decl: :class:declaration_t + :type decl: :class:`declaration_t` - :rtype: reference to :class:declaration_t or None if not found + :rtype: reference to :class:`declaration_t` or None if not found """ if not decl: return None @@ -100,8 +100,8 @@ returns declaration full qualified name If `decl` belongs to anonymious namespace or class, the function will return C++ illegal qualified name. - :param decl: :class:declaration_t - :type decl: :class:declaration_t + :param decl: :class:`declaration_t` + :type decl: :class:`declaration_t` :rtype: full name of declarations. """ if None is decl: @@ -121,7 +121,7 @@ converts tree representation of declarations to flatten one. :param decl_or_decls: reference to list of declaration's or single declaration - :type decl_or_decls: :class:declaration_t or [ :class:declaration_t ] + :type decl_or_decls: :class:`declaration_t` or [ :class:`declaration_t` ] :rtype: [ all internal declarations ] """ @@ -152,7 +152,7 @@ converts tree representation of declarations to flatten one. :param decl_or_decls: reference to list of declaration's or single declaration - :type decl_or_decls: :class:declaration_t or [ :class:declaration_t ] + :type decl_or_decls: :class:`declaration_t` or [ :class:`declaration_t` ] :rtype: [ all internal declarations ] """ @@ -191,7 +191,7 @@ helper class for different search algorithms. This class will help developer to match declaration by: - - declaration type, for example :class:class_t or L{operator_t}. + - declaration type, for example :class:`class_t` or :class:`operator_t`. - declaration name - declaration full name - reference to parent declaration @@ -208,7 +208,7 @@ returns True if inst do match one of specified criteria :param inst: declaration instance - :type inst: :class:declaration_t + :type inst: :class:`declaration_t` :rtype: bool """ @@ -239,7 +239,7 @@ """ returns a list of all declarations that match criteria, defined by developer - For more information about arguments see :class:match_declaration_t class. + For more information about arguments see :class:`match_declaration_t` class. :rtype: [ matched declarations ] """ @@ -261,9 +261,9 @@ returns single declaration that match criteria, defined by developer. If more the one declaration was found None will be returned. - For more information about arguments see :class:match_declaration_t class. + For more information about arguments see :class:`match_declaration_t` class. - :rtype: matched declaration :class:declaration_t or None + :rtype: matched declaration :class:`declaration_t` or None """ decl = find_all_declarations( declarations, type=type, name=name, parent=parent, recursive=recursive, fullname=fullname ) if len( decl ) == 1: @@ -273,9 +273,9 @@ """ returns first declaration that match criteria, defined by developer - For more information about arguments see :class:match_declaration_t class. + For more information about arguments see :class:`match_declaration_t` class. - :rtype: matched declaration :class:declaration_t or None + :rtype: matched declaration :class:`declaration_t` or None """ matcher = match_declaration_t(type, name, fullname, parent) if recursive: @@ -295,7 +295,7 @@ contains all file names of declarations. :param decl_or_decls: reference to list of declaration's or single declaration - :type decl_or_decls: :class:declaration_t or [ :class:declaration_t ] + :type decl_or_decls: :class:`declaration_t` or [ :class:`declaration_t` ] :rtype: set( declaration file names ) """ @@ -308,7 +308,7 @@ class visit_function_has_not_been_found_t( RuntimeError ): """ - exception that is raised, from L{apply_visitor}, when a visitor could not be + exception that is raised, from :function:`apply_visitor`, when a visitor could not be applied. """ @@ -325,7 +325,7 @@ applies a visitor on declaration instance :param visitor: instance - :type visitor: L{type_visitor_t} or L{decl_visitor_t} + :type visitor: :class:`type_visitor_t` or :class:`decl_visitor_t` """ fname = 'visit_' + decl_inst.__class__.__name__[:-2] #removing '_t' from class name if not hasattr(visitor, fname ): Modified: pygccxml_dev/pygccxml/declarations/call_invocation.py =================================================================== --- pygccxml_dev/pygccxml/declarations/call_invocation.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/call_invocation.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -61,7 +61,7 @@ finds arguments within function invocation. :type text: str - :rtype: [ arguments ] or L{NOT_FOUND} if arguments could not be found + :rtype: [ arguments ] or :data:NOT_FOUND if arguments could not be found """ global __THE_PARSER return __THE_PARSER.find_args( text, start ) Modified: pygccxml_dev/pygccxml/declarations/calldef.py =================================================================== --- pygccxml_dev/pygccxml/declarations/calldef.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/calldef.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -139,8 +139,7 @@ def _set_type(self, type): self._type = type type = property( _get_type, _set_type - , doc="""The type of the argument. - @type: :class:type_t""") + , doc="""The argument :class:`type <type_t>`""") def _get_attributes( self ): return self._attributes @@ -198,7 +197,7 @@ self._arguments = arguments arguments = property( _get_arguments , _set_arguments , doc="""The argument list. - @type: list of :class:argument_t""") + @type: list of :class:`argument_t`""") @property def has_ellipsis( self ): @@ -241,7 +240,7 @@ self._exceptions = exceptions exceptions = property( _get_exceptions, _set_exceptions , doc="""The list of exceptions. - @type: list of :class:declaration_t""") + @type: list of :class:`declaration_t`""") def _get_return_type(self): return self._return_type @@ -249,13 +248,13 @@ self._return_type = return_type return_type = property( _get_return_type, _set_return_type , doc='''The type of the return value of the "callable" or None (constructors). - @type: :class:type_t + @type: :class:`type_t` ''') @property def overloads(self): """A list of overloaded "callables" (i.e. other callables with the same name within the same scope. - @type: list of L{calldef_t} + @type: list of :class:`calldef_t` """ if not self.parent: return [] @@ -364,7 +363,7 @@ self._calling_convention = cc calling_convention = property( get_calling_convention, set_calling_convention - , doc="function calling convention. See L{CALLING_CONVENTION_TYPES} class for possible values" ) + , doc="function calling convention. See :class:CALLING_CONVENTION_TYPES class for possible values" ) #Second level in hierarchy of calldef @@ -417,7 +416,7 @@ assert virtuality in VIRTUALITY_TYPES.ALL self._virtuality = virtuality virtuality = property( get_virtuality, set_virtuality - , doc="""Describes the "virtuality" of the member (as defined by the string constants in the class L{VIRTUALITY_TYPES}). + , doc="""Describes the "virtuality" of the member (as defined by the string constants in the class :class:VIRTUALITY_TYPES). @type: str""") def _get_access_type(self): @@ -441,7 +440,7 @@ , doc="""describes, whether "callable" has static modifier or not""") def function_type(self): - """returns function type. See :class:type_t hierarchy""" + """returns function type. See :class:`type_t` hierarchy""" if self.has_static: return cpptypes.free_function_type_t( return_type=self.return_type , arguments_types=[ arg.type for arg in self.arguments ] ) @@ -495,7 +494,7 @@ return [] def function_type(self): - """returns function type. See :class:type_t hierarchy""" + """returns function type. See :class:`type_t` hierarchy""" return cpptypes.free_function_type_t( return_type=self.return_type , arguments_types=[ arg.type for arg in self.arguments ] ) Modified: pygccxml_dev/pygccxml/declarations/class_declaration.py =================================================================== --- pygccxml_dev/pygccxml/declarations/class_declaration.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/class_declaration.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -83,7 +83,7 @@ assert( isinstance( new_related_class, class_t ) ) self._related_class = new_related_class related_class = property( _get_related_class, _set_related_class - , doc="reference to base or derived L{class<class_t>}") + , doc="reference to base or derived :class:`class <class_t>`") def _get_access(self): return self._access @@ -92,7 +92,7 @@ self._access = new_access access = property( _get_access, _set_access ) access_type = property( _get_access, _set_access - , doc="describes L{hierarchy type<ACCESS_TYPES>}") + , doc="describes :class:`hierarchy type <ACCESS_TYPES>`") #TODO: check whether GCC XML support this and if so parser this information def _get_is_virtual(self): @@ -124,11 +124,11 @@ def _set_aliases( self, new_aliases ): self._aliases = new_aliases aliases = property( _get_aliases, _set_aliases - , doc="List of L{aliases<typedef_t>} to this instance") + , doc="List of :class:`aliases <typedef_t>` to this instance") @property def container_traits( self ): - """reference to L{container traits<container_traits.py>} or None""" + """reference to :class:`container_traits_impl_t` or None""" if self._container_traits_set == False: import container_traits #prevent cyclic dependencies self._container_traits_set = True @@ -231,18 +231,18 @@ assert( new_class_type in CLASS_TYPES.ALL ) self._class_type = new_class_type class_type = property( _get_class_type, _set_class_type - , doc="describes class L{type<CLASS_TYPES>}") + , doc="describes class :class:`type <CLASS_TYPES>`") def _get_bases(self): return self._bases def _set_bases( self, new_bases ): self._bases = new_bases bases = property( _get_bases, _set_bases - , doc="list of L{base classes<hierarchy_info_t>}") + , doc="list of :class:`base classes <hierarchy_info_t>`") @property def recursive_bases(self): - """list of all L{base classes<hierarchy_info_t>}""" + """list of all :class:`base classes <hierarchy_info_t>`""" if self._recursive_bases is None: to_go = self.bases[:] all_bases = [] @@ -259,11 +259,11 @@ def _set_derived( self, new_derived ): self._derived = new_derived derived = property( _get_derived, _set_derived - , doc="list of L{derived classes<hierarchy_info_t>}") + , doc="list of :class:`derived classes <hierarchy_info_t>`") @property def recursive_derived(self): - """list of all L{derive classes<hierarchy_info_t>}""" + """list of all :class:`derive classes <hierarchy_info_t>`""" if self._recursive_derived is None: to_go = self.derived[:] all_derived = [] @@ -334,7 +334,7 @@ def _set_aliases( self, new_aliases ): self._aliases = new_aliases aliases = property( _get_aliases, _set_aliases - , doc="List of L{aliases<typedef_t>} to this instance") + , doc="List of :class:`aliases <typedef_t>` to this instance") def _get_byte_size(self): return self._byte_size @@ -384,7 +384,7 @@ def adopt_declaration( self, decl, access ): """adds new declaration to the class - :param decl: reference to a L{declaration<declaration_t>} + :param decl: reference to a :class:`declaration_t` :param access: member access type :type access: :class:ACCESS_TYPES @@ -406,7 +406,7 @@ removes decl from members list :param decl: declaration to be removed - :type decl: :class:declaration_t + :type decl: :class:`declaration_t` """ container = None access_type = self.find_out_member_access_type( decl ) @@ -424,7 +424,7 @@ returns member access type :param member: member of the class - :type member: :class:declaration_t + :type member: :class:`declaration_t` :rtype: :class:ACCESS_TYPES """ @@ -470,7 +470,7 @@ @property def container_traits( self ): - """reference to L{container traits<container_traits.py>} or None""" + """reference to :class:`container_traits_impl_t` or None""" if self._container_traits_set == False: import container_traits #prevent cyclic dependencies self._container_traits_set = True Modified: pygccxml_dev/pygccxml/declarations/cpptypes.py =================================================================== --- pygccxml_dev/pygccxml/declarations/cpptypes.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/cpptypes.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -80,7 +80,7 @@ class dummy_type_t( type_t ): - """provides :class:type_t interface for a string, that defines C++ type. + """provides :class:`type_t` interface for a string, that defines C++ type. This class could be very useful in the code generator. """ @@ -467,14 +467,14 @@ def _set_return_type(self, new_return_type): self._return_type = new_return_type return_type = property( _get_return_type, _set_return_type - , doc="reference to L{return type<type_t>}") + , doc="reference to :class:`return type <type_t>`") def _get_arguments_types(self): return self._arguments_types def _set_arguments_types(self, new_arguments_types): self._arguments_types = new_arguments_types arguments_types = property( _get_arguments_types, _set_arguments_types - , doc="list of argument L{types<type_t>}") + , doc="list of argument :class:`types <type_t>`") @property def has_ellipsis( self ): @@ -495,11 +495,9 @@ returns free function type :param return_type: function return type - :type return_type: :class:type_t - + :type return_type: :class:`type_t` :param arguments_types: list of argument :class:`type <type_t>` - - :rtype: L{free_function_type_t} + :rtype: :class:`free_function_type_t` """ f = lambda x: x.build_decl_string( with_defaults ) return free_function_type_t.NAME_TEMPLATE % { @@ -552,7 +550,7 @@ def _set_class_inst(self, class_inst ): self._class_inst = class_inst class_inst = property( _get_class_inst, _set_class_inst - ,doc="reference to parent L{class<declaration_t>}" ) + ,doc="reference to parent :class:`class <declaration_t>`" ) #TODO: create real typedef def create_typedef( self, typedef_name, class_alias=None, with_defaults=True): @@ -644,7 +642,7 @@ ## declarated types: class declarated_t( type_t ): - """class that binds between to hierarchies: :class:type_t and :class:declaration_t""" + """class that binds between to hierarchies: :class:`type_t` and :class:`declaration_t`""" def __init__( self, declaration ): type_t.__init__( self ) self._declaration = declaration @@ -654,7 +652,7 @@ def _set_declaration(self, new_declaration): self._declaration = new_declaration declaration = property( _get_declaration, _set_declaration - , doc="reference to L{declaration<declaration_t>}") + , doc="reference to :class:`declaration_t`") def build_decl_string(self, with_defaults=True): if with_defaults: Modified: pygccxml_dev/pygccxml/declarations/declaration.py =================================================================== --- pygccxml_dev/pygccxml/declarations/declaration.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/declaration.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -200,7 +200,7 @@ self._location = new_location location = property( _get_location, _set_location , doc="""Location of the declaration within source file - @type: L{location_t} + @type: :class:`location_t` """) def _get_is_artificial( self ): @@ -268,7 +268,7 @@ def cache( self ): """implementation details - reference to instance of L{algorithms_cache.algorithms_cache_t} class. + reference to instance of :class:`algorithms_cache_t` class. """ return self._cache Modified: pygccxml_dev/pygccxml/declarations/matchers.py =================================================================== --- pygccxml_dev/pygccxml/declarations/matchers.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/matchers.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -112,13 +112,13 @@ - declaration name, also could be fully qualified name Example: wstring or ::std::wstring - declaration type - Example: :class:class_t, :class:namespace_t, :class:enumeration_t + Example: :class:`class_t`, :class:`namespace_t`, :class:`enumeration_t` - location within file system ( file or directory ) """ def __init__( self, name=None, decl_type=None, header_dir=None, header_file=None ): """ - :param decl_type: declaration type to match by. For example :class:enumeration_t. - :type decl_type: any class that derives from L{declarations.declaration_t} class + :param decl_type: declaration type to match by. For example :class:`enumeration_t`. + :type decl_type: any class that derives from :class:`declaration_t` class :param name: declaration name, could be full name. :type name: str @@ -259,13 +259,13 @@ class variable_matcher_t( declaration_matcher_t ): """ Instance of this class will match variables by next criteria: - - :class:declaration_matcher_t criteria - - variable type. Example: L{int_t} or 'int' + - :class:`declaration_matcher_t` criteria + - variable type. Example: :class:`int_t` or 'int' """ def __init__( self, name=None, type=None, header_dir=None, header_file=None ): """ :param type: variable type - :type type: string or instance of :class:type_t derived class + :type type: string or instance of :class:`type_t` derived class """ declaration_matcher_t.__init__( self , name=name @@ -315,18 +315,18 @@ class calldef_matcher_t( declaration_matcher_t ): """ Instance of this class will match callable by next criteria: - - :class:declaration_matcher_t criteria - - return type. Example: L{int_t} or 'int' + - :class:`declaration_matcher_t` criteria + - return type. Example: :class:`int_t` or 'int' - argument types """ def __init__( self, name=None, return_type=None, arg_types=None, decl_type=None, header_dir=None, header_file=None): """ :param return_type: callable return type - :type return_type: string or instance of :class:type_t derived class + :type return_type: string or instance of :class:`type_t` derived class :param arg_types: list of function argument types. arg_types can contain. - Any item within the list could be string or instance of :class:type_t derived + Any item within the list could be string or instance of :class:`type_t` derived class. If you don't want some argument to participate in match you can put None. For example: @@ -397,7 +397,7 @@ class operator_matcher_t( calldef_matcher_t ): """ Instance of this class will match operators by next criteria: - - L{calldef_matcher_t} criteria + - :class:`calldef_matcher_t` criteria - operator symbol: =, !=, (), [] and etc """ def __init__( self, name=None, symbol=None, return_type=None, arg_types=None, decl_type=None, header_dir=None, header_file=None): @@ -499,7 +499,7 @@ def __init__( self, virtuality_type ): """ :param access_type: declaration access type - :type access_type: L{VIRTUALITY_TYPES} defines few consts for your convinience. + :type access_type: :class:VIRTUALITY_TYPES defines few consts for your convinience. """ matcher_base_t.__init__( self ) self.virtuality_type = virtuality_type Modified: pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py =================================================================== --- pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -4,10 +4,10 @@ # http://www.boost.org/LICENSE_1_0.txt) """ -defines class L{mdecl_wrapper_t} that allows to work on set of declarations, +defines class :class:`mdecl_wrapper_t` that allows to work on set of declarations, as it was one declaration. -The L{class<mdecl_wrapper_t>} allows user to not write "for" loops within the code. +The :class:`class <mdecl_wrapper_t>` allows user to not write "for" loops within the code. """ import os @@ -46,7 +46,7 @@ def __init__( self, decls ): """:param decls: list of declarations to operate on. - :type decls: list of L{declaration wrappers<decl_wrapper_t>} + :type decls: list of :class:`declaration wrappers <decl_wrapper_t>` """ object.__init__( self ) self.__dict__['declarations'] = decls Modified: pygccxml_dev/pygccxml/declarations/namespace.py =================================================================== --- pygccxml_dev/pygccxml/declarations/namespace.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/namespace.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -58,7 +58,7 @@ removes decl from members list :param decl: declaration to be removed - :type decl: :class:declaration_t + :type decl: :class:`declaration_t` """ del self.declarations[ self.declarations.index( decl ) ] decl.cache.reset() Modified: pygccxml_dev/pygccxml/declarations/scopedef.py =================================================================== --- pygccxml_dev/pygccxml/declarations/scopedef.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/scopedef.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -53,7 +53,7 @@ Example 2: :: ns - referers to global namespace do_smths = ns.member_functions( "do_something ) - will return instance - of L{mdecl_wrapper_t} object. This object allows you few things: + of :class:`mdecl_wrapper_t` object. This object allows you few things: 1. To iterate on selected declarations @@ -129,7 +129,7 @@ return self._all_decls_not_recursive else: return self._get_declarations_impl() - declarations = property( _get_declarations, doc="list of children L{declarations<declaration_t>}" ) + declarations = property( _get_declarations, doc="list of children :class:`declarations <declaration_t>`" ) def remove_declaration( self, decl ): raise NotImplementedError() Modified: pygccxml_dev/pygccxml/declarations/templates.py =================================================================== --- pygccxml_dev/pygccxml/declarations/templates.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/templates.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -12,7 +12,7 @@ - name ( std::vector ) - list of arguments ( int ) -This module also defines few convenience function like L{split} and L{join}. +This module also defines few convenience function like :function:split and :function:join. """ import pattern_parser Modified: pygccxml_dev/pygccxml/declarations/type_traits.py =================================================================== --- pygccxml_dev/pygccxml/declarations/type_traits.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/type_traits.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -12,7 +12,7 @@ - modify type Those functions are very valuable for code generation. Almost all functions -within this module works on :class:type_t class hierarchy and\\or :class:class_t. +within this module works on :class:`type_t` class hierarchy and\\or :class:class_t. """ import os @@ -252,9 +252,9 @@ return nake_type.base def remove_declarated( type_ ): - """removes type-declaration class-binder L{declarated_t} from the type_ + """removes type-declaration class-binder :class:`declarated_t` from the type_ - If type_ is not L{declarated_t}, it will be returned as is + If type_ is not :class:`declarated_t`, it will be returned as is """ type_ = remove_alias( type_ ) if isinstance( type_, cpptypes.declarated_t ): Modified: pygccxml_dev/pygccxml/declarations/variable.py =================================================================== --- pygccxml_dev/pygccxml/declarations/variable.py 2009-02-02 19:04:21 UTC (rev 1651) +++ pygccxml_dev/pygccxml/declarations/variable.py 2009-02-02 20:40:36 UTC (rev 1652) @@ -48,7 +48,7 @@ def _set_type_qualifiers(self, type_qualifiers): self._type_qualifiers = type_qualifiers type_qualifiers = property( _get_type_qualifiers, _set_type_qualifiers - , doc="reference to the L{type_qualifiers_t} instance" ) + , doc="reference to the :class:`type_qualifiers_t` instance" ) def _get_value(self): return self._value Modified: pyplusplus_dev/docs/comparisons/pyste.rest =================================================================== --- pyplusplus_dev/docs/comparisons/pyste.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pyplusplus_dev/docs/comparisons/pyste.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -51,7 +51,7 @@ 2. It is very difficult to customize generated code. I will provide few examples later. -I tried to fix `Pyste`_. At first, I developed `pygccxml`_ and tried to replace +I tried to fix `Pyste`_. At first, I developed :doc:`pygccxml <../../pygccxml/pygccxml>` and tried to replace relevant `Pyste`_ functionality. I did not like the result. After this, I dropped the idea to fix `Pyste`_ and decided to develop new code generator - `Py++`_. Later you will find few points, which explains, why I decided not to fix `Pyste`_. @@ -156,7 +156,7 @@ One of the biggest weaknesses of `Pyste`_ is a lack of good `GCC-XML`_ front-end and this fact cause `Pyste`_ to generate not optimal code. I will prove this later. In order to avoid such weakness, before I have created `Py++`_, -I created `pygccxml`_. `pygccxml`_ is a stand-alone project, which provides few +I created :doc:`pygccxml <../../pygccxml/pygccxml>`. :doc:`pygccxml <../../pygccxml/pygccxml>` is a stand-alone project, which provides few things: * hierarchy of C++ declarations @@ -170,13 +170,13 @@ + every file will be parsed alone, after this, duplicated declarations and types will be removed -`pygccxml`_ contributes in few ways to `Py++`_: +:doc:`pygccxml <../../pygccxml/pygccxml>` contributes in few ways to `Py++`_: + `Py++`_ has nothing to do with code parsing. Theoretically - an other back-end could be added to `pygccxml`_ without changing even one + an other back-end could be added to :doc:`pygccxml <../../pygccxml/pygccxml>` without changing even one line of code within `Py++`_. - + `pygccxml`_ has type traits. A lot of type traits algorithms from + + :doc:`pygccxml <../../pygccxml/pygccxml>` has type traits. A lot of type traits algorithms from `boost.type_traits`_ library has been implemented. `Py++`_ makes an extensive use of them: @@ -215,7 +215,7 @@ 3. Maintenance. Every time you add new file\\class to your project you should modify\\create `Pyste`_ interface files. - They are solved by `pygccxml`_ package. Please take a look on `pygccxml`_ + They are solved by :doc:`pygccxml <../../pygccxml/pygccxml>` package. Please take a look on :doc:`pygccxml <../../pygccxml/pygccxml>` `query interface`__ documentation. .. __ : ./../../pygccxml/query_interface.html @@ -282,7 +282,7 @@ ------------ Both `Pyste`_ and `Py++`_ introduce one external dependency. In order to parse XML `Pyste`_ uses `elementtree`_. On the other side `Py++`_ -depends on `pygccxml`_ project. +depends on :doc:`pygccxml <../../pygccxml/pygccxml>` project. ------------- Features list @@ -424,7 +424,6 @@ .. _`screenshot` : ./../documentation/tutorials/pyplusplus_gui.html .. _`Py++` : ./../pyplusplus.html -.. _`pygccxml` : ./../../pygccxml/pygccxml.html .. _`Pyste`: http://www.boost.org/libs/python/doc/index.html .. _`Boost.Python`: http://www.boost.org/libs/python/doc/index.html .. _`SourceForge`: http://sourceforge.net/index.php Modified: pyplusplus_dev/docs/documentation/architecture.rest =================================================================== --- pyplusplus_dev/docs/documentation/architecture.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pyplusplus_dev/docs/documentation/architecture.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -23,7 +23,7 @@ On the earlier stage of the development, I realized, that all this functionality does not belong to code generator and should be implemented out side of it. -`pygccxml`_ project was born. `pygccxml`_ made the code generator to be smaller +:doc:`pygccxml <../../pygccxml/pygccxml>` project was born. :doc:`pygccxml <../../pygccxml/pygccxml>` made the code generator to be smaller and C++ parser independent. It provides the following services: * definition of classes, that describe C++ declaration and types, and their @@ -55,7 +55,7 @@ Parsing integration ~~~~~~~~~~~~~~~~~~~ -`Py++`_ provides it's own "API" to configure `pygccxml`_ parsing services. The +`Py++`_ provides it's own "API" to configure :doc:`pygccxml <../../pygccxml/pygccxml>` parsing services. The "API" I am talking about, is arguments to ``module_builder.__init__`` method. We think, that exposing those services via `Py++`_ simplifies its usage. @@ -131,7 +131,7 @@ * provides user with additional information( warnings and hints ) -* as a bonus, `pygccxml`_ remained to be stand-alone project +* as a bonus, :doc:`pygccxml <../../pygccxml/pygccxml>` remained to be stand-alone project ---------------------- Code generation engine @@ -323,7 +323,6 @@ .. _`open-closed principle` : http://www.google.com/search?sourceid=gmail&q=open%20closed%20principle .. _`Py++` : ./../pyplusplus.html -.. _`pygccxml` : ./../../pygccxml/pygccxml.html .. _`Boost.Python`: http://www.boost.org/libs/python/doc/index.html .. _`Python`: http://www.python.org .. _`GCC-XML`: http://www.gccxml.org Modified: pyplusplus_dev/docs/documentation/ctypes/ctypes_integration.rest =================================================================== --- pyplusplus_dev/docs/documentation/ctypes/ctypes_integration.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pyplusplus_dev/docs/documentation/ctypes/ctypes_integration.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -94,7 +94,6 @@ .. _`ctypes` : http://docs.python.org/lib/module-ctypes.html .. _`from_address` : http://docs.python.org/lib/ctypes-data-types.html .. _`Py++` : ./../../pyplusplus.html -.. _`pygccxml` : ./../../../pygccxml/pygccxml.html .. _`Boost.Python`: http://www.boost.org/libs/python/doc/index.html .. _`Python`: http://www.python.org .. _`GCC-XML`: http://www.gccxml.org Modified: pyplusplus_dev/docs/documentation/ctypes/this_and_sizeof.rest =================================================================== --- pyplusplus_dev/docs/documentation/ctypes/this_and_sizeof.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pyplusplus_dev/docs/documentation/ctypes/this_and_sizeof.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -38,7 +38,6 @@ .. _`ctypes` : http://docs.python.org/lib/module-ctypes.html .. _`from_address` : http://docs.python.org/lib/ctypes-data-types.html .. _`Py++` : ./../../pyplusplus.html -.. _`pygccxml` : ./../../../pygccxml/pygccxml.html .. _`Boost.Python`: http://www.boost.org/libs/python/doc/index.html .. _`Python`: http://www.python.org .. _`GCC-XML`: http://www.gccxml.org Modified: pyplusplus_dev/docs/documentation/ctypes/unions.rest =================================================================== --- pyplusplus_dev/docs/documentation/ctypes/unions.rest 2009-02-02 19:04:21 UTC (rev 1651) +++ pyplusplus_dev/docs/documentation/ctypes/unions.rest 2009-02-02 20:40:36 UTC (rev 1652) @@ -66,7 +66,6 @@ .. _`ctypes` : http://docs.pyth... [truncated message content] |