Revision: 288
Author: roman_yakovenko
Date: 2006-07-09 12:53:40 -0700 (Sun, 09 Jul 2006)
ViewCVS: http://svn.sourceforge.net/pygccxml/?rev=288&view=rev
Log Message:
-----------
updating indexing suite 2 documentation
Modified Paths:
--------------
pyplusplus_dev/docs/std_containers/containers.rest
pyplusplus_dev/docs/std_containers/www_configuration.py
Modified: pyplusplus_dev/docs/std_containers/containers.rest
===================================================================
--- pyplusplus_dev/docs/std_containers/containers.rest 2006-07-09 19:08:54 UTC (rev 287)
+++ pyplusplus_dev/docs/std_containers/containers.rest 2006-07-09 19:53:40 UTC (rev 288)
@@ -78,21 +78,57 @@
Every declarated class has ``indexing_suite`` property. If the class is an
instantiation of stl container, this property containes reference to an instance
-of ``indexing_suite1_t`` or ``indexing_suite2_t`` class. How does `pyplusplus`_
-know that the class represents stl container instantiation? Well, it uses
-``pygccxml.declarations.container_traits`` to find out this. This class, provides
-all functionality needed to identify container and to find out its ``value_type``
-( ``mapped_type`` ). May I give you small tip? You can use
-``pygccxml.declarations.container_traits`` class in search functionality.
+of ``indexing_suite1_t`` or ``indexing_suite2_t`` class.
+
+
+How does `pyplusplus`_ know that a class represents stl container instantiation?
+Well, it uses ``pygccxml.declarations.container_traits`` to find out this.
+``pygccxml.declarations.container_traits`` class, provides all functionality
+needed to identify container and to find out its ``value_type``( ``mapped_type`` ).
-Built-in indexing suite
------------------------
-..
+Built-in indexing suite API
+---------------------------
+`pyplusplus`_ defines ``indexing_suite1_t`` class. This class allows configure
+any detail of generated code:
-Indexing suite v1
------------------
+* ``no_proxy`` - a boolean, if value type is one of the next types
+ * fundamental type
+ * enumeration
+ * [w]string
+ * boost::shared_ptr<?>
+
+ then, ``no_proxy`` will be set to ``True``, otherwise to ``False``.
+
+* ``derived_policies`` - a string, that will be added as is to generated code
+
+* ``element_type`` - is a reference to container ``value_type`` or ``mapped_type``.
+
+
+Next version of indexing suite API
+----------------------------------
+
+In this case there is no single place, where you can configure exported container
+functionality. Please take a look on next C++ code:
+::
+
+ struct item{ ... };
+
+ struct my_data{
+ std::vector<item> items;
+ std::map< std::string, item > name2item_mapping;
+ };
+
+
+`pyplusplus`_ declarations tree will contains ``item``, ``my_data``,
+``vector<item>`` and ``map<string,item>`` class declarations. Next version of
+indexing suite allows you to configure what set of operation will be supported,
+based on functionality provided by container ``value_type`` ( ``mapped_type`` ).
+To be more specific, you can create ``value_traits`` and set ``equality_comparable``
+or ``less_than_comparable`` to ``True`` if the type has `operator==` or ``False``
+
+
In this case, `pyplusplus`
Generated code
Modified: pyplusplus_dev/docs/std_containers/www_configuration.py
===================================================================
--- pyplusplus_dev/docs/std_containers/www_configuration.py 2006-07-09 19:08:54 UTC (rev 287)
+++ pyplusplus_dev/docs/std_containers/www_configuration.py 2006-07-09 19:53:40 UTC (rev 288)
@@ -1 +1,3 @@
-name = 'C++ containers'
\ No newline at end of file
+name = 'C++ containers'
+main_html_file = 'containers.html'
+files_to_skip = ['indexing_suite_v2.html']
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|