summaryrefslogtreecommitdiffstats
path: root/lib/kross/python/cxx/PyCXX.html
diff options
context:
space:
mode:
Diffstat (limited to 'lib/kross/python/cxx/PyCXX.html')
-rw-r--r--lib/kross/python/cxx/PyCXX.html26
1 files changed, 13 insertions, 13 deletions
diff --git a/lib/kross/python/cxx/PyCXX.html b/lib/kross/python/cxx/PyCXX.html
index 566974c14..0c7172a1a 100644
--- a/lib/kross/python/cxx/PyCXX.html
+++ b/lib/kross/python/cxx/PyCXX.html
@@ -83,7 +83,7 @@ Unix: <cite>/usr/local/PyCXX</cite>
Windows: <cite>cl /I=C:\PyCXX ...</cite><br>
Unix: <cite>g++ -I/usr/local/PyCXX ...</cite>
<li>Include PyCXX headers files in your code using the CXX prefix:<br>
-<cite>#include &quot;CXX/Object.hxx&quot;</cite>
+<cite>#include &quot;CXX/Object.h&quot;</cite>
</ul>
<p>The header file CXX/config.h may need to be adjusted for the
@@ -100,7 +100,7 @@ the Py:: prefix when referring to them, or include the statement:</p>
<h2>Wrappers for standard objects: CXX_Objects.h</h2>
-<p>Header file CXX_Objects.h requires adding file Src/cxxsupport.cxx to
+<p>Header file CXX_Objects.h requires adding file Src/cxxsupport.cpp to
your module sources. CXX_Objects provides a set of wrapper classes that allow you access
to most of the Python C API using a C++ notation that closely resembles Python. For
example, this Python:</p>
@@ -121,7 +121,7 @@ alist = d.keys();
std::cout &lt;&lt; alist &lt;&lt; std::endl;
</pre>
-<p>You can optionally use the CXX/Extensions.hxx facility described later
+<p>You can optionally use the CXX/Extensions.h facility described later
to define Python extension modules and extension objects.</p>
<h3>We avoid programming with Python object pointers</h3>
@@ -165,8 +165,8 @@ integer argument, that will create a Python <cite>dict</cite>
<p>If you have written a significant Python extension, this tedium looks all too familiar.
The vast bulk of the coding is error checking and cleanup. Now compare the same thing
-written in C++ using CXX/Objects.hxx. The things with Python-like names (Int, Dict, Tuple) are
-from CXX/Objects.hxx.</p>
+written in C++ using CXX/Objects.h. The things with Python-like names (Int, Dict, Tuple) are
+from CXX/Objects.h.</p>
<pre>static PyObject* mymodule_addvalue (PyObject* self, PyObject* pargs)
{
@@ -211,7 +211,7 @@ Object addvalue (Object &amp; self, const Tuple &amp; args)
<h2>The basic concept is to wrap Python pointers</h2>
-<p>The basic concept of CXX/Objects.hxx is to create a wrapper around
+<p>The basic concept of CXX/Objects.h is to create a wrapper around
each <cite>PyObject *</cite> so that the reference counting can be
done automatically, thus eliminating the most frequent source of errors. In addition, we
can then add methods and operators so that Python objects can be manipulated in C++
@@ -223,7 +223,7 @@ the pointer. Since C++ calls the destructors on objects that are about to go out
we are guaranteed that we will keep the reference counts right even if we unexpectedly
leave a routine with an exception.</p>
-<p>As a matter of philosophy, CXX/Objects.hxx prevents the creation of instances of its
+<p>As a matter of philosophy, CXX/Objects.h prevents the creation of instances of its
classes unless the instance will be a valid instance of its class. When an attempt is made
to create an object that will not be valid, an exception is thrown.</p>
@@ -1713,17 +1713,17 @@ Exception to clear it.:</p>
<h2>Extension Facilities</h2>
-<p>CXX/Extensions.hxx provides facilities for:
+<p>CXX/Extensions.h provides facilities for:
<ul>
<li>Creating a Python extension module</li>
<li>Creating new Python extension types</li>
</ul>
-<p>These facilities use CXX/Objects.hxx and its support file cxxsupport.cxx.</p>
+<p>These facilities use CXX/Objects.h and its support file cxxsupport.cpp.</p>
-<p>If you use CXX/Extensions.hxx you must also include source files cxxextensions.c and
-cxx_extensions.cxx</p>
+<p>If you use CXX/Extensions.h you must also include source files cxxextensions.c and
+cxx_extensions.cpp</p>
<h3>Creating an Python extension module</h3>
@@ -1745,7 +1745,7 @@ details are necessary:
<p>To create an extension module, you inherit from class ExtensionModule templated on
yourself: In the constructor, you make calls to register methods of this class with Python
as extension module methods. In this example, two methods are added (this is a simplified
-form of the example in Demo/example.cxx):</p>
+form of the example in Demo/example.cpp):</p>
<pre>class example_module : public ExtensionModule&lt;example_module&gt;
{
@@ -1859,7 +1859,7 @@ addresses of functions can be added in order to give the object the desired beha
<p>Creating extension objects is of course harder since you must specify
how the object behaves and give it methods. This is shown in some detail in the example
-range.h and range.cxx, with the test routine rangetest.cxx, in directory Demo. If you have never
+range.h and range.cpp, with the test routine rangetest.cpp, in directory Demo. If you have never
created a Python extension before, you should read the Extension manual first and be very
familiar with Python's &quot;special class methods&quot;. Then what follows will make more
sense.</p>