Added SetNoneComparison call to PYTHON::top
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4479 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
d39635101e
commit
f10ce6cc84
7 changed files with 55 additions and 35 deletions
|
|
@ -46,7 +46,7 @@
|
|||
</ul>
|
||||
<li><a href="#n32">Cross language polymorphism (experimental)</a>
|
||||
<ul>
|
||||
<li><a href="#n33">Command line options</a>
|
||||
<li><a href="#n33">Enabling directors</a>
|
||||
<li><a href="#n34">Director classes</a>
|
||||
<li><a href="#n35">Ownership and object destruction</a>
|
||||
<li><a href="#n36">Exception unrolling</a>
|
||||
|
|
@ -1911,6 +1911,7 @@ function or through an instance (see the earlier section).
|
|||
|
||||
<a name="n32"></a><H2>19.5 Cross language polymorphism (experimental)</H2>
|
||||
|
||||
|
||||
Proxy classes provide a more natural, object-oriented way to access
|
||||
extension classes. As described above, each proxy instance has an
|
||||
associated C++ instance, and method calls to the proxy are passed to the
|
||||
|
|
@ -1938,6 +1939,7 @@ all the cross-language method routing transparently.
|
|||
|
||||
<a name="n33"></a><H3>19.5.1 Enabling directors</H3>
|
||||
|
||||
|
||||
The director feature is disabled by default. To use directors you
|
||||
must make two changes to the interface file. First, add the "directors"
|
||||
option to the %module directive, like this:
|
||||
|
|
@ -2002,6 +2004,7 @@ public:
|
|||
|
||||
<a name="n34"></a><H3>19.5.2 Director classes</H3>
|
||||
|
||||
|
||||
For each class that has directors enabled, SWIG generates a new class
|
||||
that derives from both the class in question and a special
|
||||
<tt>__DIRECTOR__</tt> class. These new classes, referred to as director
|
||||
|
|
@ -2074,6 +2077,7 @@ calls through Python.
|
|||
|
||||
<a name="n35"></a><H3>19.5.3 Ownership and object destruction</H3>
|
||||
|
||||
|
||||
Memory management issues are slightly more complicated with directors
|
||||
than for proxy classes alone. Python instances hold a pointer to the
|
||||
associated C++ director object, and the director in turn holds a pointer
|
||||
|
|
@ -2133,6 +2137,7 @@ references to the Foo objects remain in Python.
|
|||
|
||||
<a name="n36"></a><H3>19.5.4 Exception unrolling</H3>
|
||||
|
||||
|
||||
With directors routing method calls to Python, and proxies routing them
|
||||
to C++, the handling of exceptions is an important concern. By default, the
|
||||
directors ignore exceptions that occur during method calls that are
|
||||
|
|
@ -2184,6 +2189,7 @@ exception as soon as the C wrapper function returns.
|
|||
|
||||
<a name="n37"></a><H3>19.5.5 Overhead and code bloat</H3>
|
||||
|
||||
|
||||
Enabling directors for a class will generate a new director method for
|
||||
every virtual method in the class' inheritance chain. This alone can
|
||||
generate a lot of code bloat for large hierarchies. Method arguments
|
||||
|
|
@ -2213,6 +2219,7 @@ Python.
|
|||
|
||||
<a name="n38"></a><H3>19.5.6 Typemaps</H3>
|
||||
|
||||
|
||||
Typemaps for input and output of most of the basic types from director
|
||||
classes have been written. These are roughly the reverse of the usual
|
||||
input and output typemaps used by the wrapper code. The typemap
|
||||
|
|
@ -3638,4 +3645,4 @@ class object (if applicable).
|
|||
|
||||
<address>SWIG 1.3 - Last Modified : August 7, 2002</address>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
Loading…
Add table
Add a link
Reference in a new issue