summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorHugo Lima <hugo.lima@openbossa.org>2009-10-23 15:41:56 -0200
committerHugo Lima <hugo.lima@openbossa.org>2009-10-23 15:41:56 -0200
commita7880bedd92bfed75908c055eae641610f6f6ca2 (patch)
treed27bbd9dc7cd8f4ba2ad09c1b8d71455568900c9 /doc
parent8e21edd40416a0d6dd87afb6405f4f0443caca83 (diff)
Added documentation for tag conversion-rule.
Diffstat (limited to 'doc')
-rw-r--r--doc/typesystem_manipulating_objects.rst18
-rw-r--r--doc/typesystem_specifying_types.rst10
2 files changed, 27 insertions, 1 deletions
diff --git a/doc/typesystem_manipulating_objects.rst b/doc/typesystem_manipulating_objects.rst
index 9428df7e..34b5f719 100644
--- a/doc/typesystem_manipulating_objects.rst
+++ b/doc/typesystem_manipulating_objects.rst
@@ -97,3 +97,21 @@ add-function
</object-type>
The ``return-type`` attribute defaults to *void*, and the ``access`` to *public*.
+
+.. _conversion-rule:
+
+conversion-rule
+^^^^^^^^^^^^^^^
+
+ The conversion-rule node allows you to write customized code to convert the given argument between the target
+ language and C++, and is a child of the :ref:`value-type`, :ref:`object-type`, :ref:`primitive-type` and
+ :ref:`container-type` nodes.
+
+ The code pointed by the file attribute is very tied to the generator using APIExtractor, so it don't follow any
+ rules, but the generator rules..
+
+ .. code-block:: xml
+
+ <value-type name="Foo">
+ <convertion-rule file="my_converter_implementation.h" />
+ </value-type>
diff --git a/doc/typesystem_specifying_types.rst b/doc/typesystem_specifying_types.rst
index 9535a6ae..e9487383 100644
--- a/doc/typesystem_specifying_types.rst
+++ b/doc/typesystem_specifying_types.rst
@@ -63,6 +63,7 @@ rejection
function, set the class attribute to \*. You can use an empty class field
to denote a global function.
+.. _primitive-type:
primitive-type
^^^^^^^^^^^^^^
@@ -207,7 +208,7 @@ interface-type
The interface-type node indicates that the given class is replaced by an
interface pattern when mapping from C++ to the target language. Using the
- interface-type node implicitly makes the given type an :ref:`object type`.
+ interface-type node implicitly makes the given type an :ref:`object-type`.
.. code-block:: xml
@@ -222,3 +223,10 @@ interface-type
If there is no C++ base class, the *optional* **default-superclass** attribute
can be used to specify a superclass in the generated target language API, for
the given class.
+
+.. _container-type:
+
+container-type
+^^^^^^^^^^^^^^
+
+ .. note:: This tag is not documented yet.