summaryrefslogtreecommitdiff
path: root/Doc/Manual
diff options
context:
space:
mode:
authorWilliam S Fulton <wsf@fultondesigns.co.uk>2015-10-01 20:30:09 +0100
committerWilliam S Fulton <wsf@fultondesigns.co.uk>2015-10-01 22:36:01 +0100
commit803ba97a83e8e3ea55718bd38354334b46a78cb4 (patch)
tree3e32c0fb95476ffab8cb74db5fa1b62df500ef34 /Doc/Manual
parente12277a4698b2502702e64f18e44613d5b460d3a (diff)
downloadswig-803ba97a83e8e3ea55718bd38354334b46a78cb4.tar.gz
Update docs for shared_ptr
Diffstat (limited to 'Doc/Manual')
-rw-r--r--Doc/Manual/Contents.html30
-rw-r--r--Doc/Manual/Go.html1
-rw-r--r--Doc/Manual/Java.html18
-rw-r--r--Doc/Manual/Octave.html18
-rw-r--r--Doc/Manual/Python.html18
-rw-r--r--Doc/Manual/Ruby.html18
6 files changed, 101 insertions, 2 deletions
diff --git a/Doc/Manual/Contents.html b/Doc/Manual/Contents.html
index e8b1e3477..21ba6eaad 100644
--- a/Doc/Manual/Contents.html
+++ b/Doc/Manual/Contents.html
@@ -847,8 +847,8 @@
<li><a href="Go.html#Go_examples">Examples</a>
<li><a href="Go.html#Go_running_swig">Running SWIG with Go</a>
<ul>
-<li><a href="Go.html#Go_commandline">Additional Commandline Options</a>
-<li><a href="Go.html#Go_outputs">Go Output Files</a>
+<li><a href="Go.html#Go_commandline">Go-specific Commandline Options</a>
+<li><a href="Go.html#Go_outputs">Generated Wrapper Files</a>
</ul>
<li><a href="Go.html#Go_basic_tour">A tour of basic C/C++ wrapping</a>
<ul>
@@ -863,6 +863,16 @@
</ul>
<li><a href="Go.html#Go_templates">Go Templates</a>
<li><a href="Go.html#Go_director_classes">Go Director Classes</a>
+<ul>
+<li><a href="Go.html#Go_director_example_cpp_code">Example C++ code</a>
+<li><a href="Go.html#Go_director_enable">Enable director feature</a>
+<li><a href="Go.html#Go_director_ctor_dtor">Constructor and destructor</a>
+<li><a href="Go.html#Go_director_overriding">Override virtual methods</a>
+<li><a href="Go.html#Go_director_base_methods">Call base methods</a>
+<li><a href="Go.html#Go_director_subclass">Subclass via embedding</a>
+<li><a href="Go.html#Go_director_finalizer">Memory management with runtime.SetFinalizer</a>
+<li><a href="Go.html#Go_director_foobargo_class">Complete FooBarGo example class</a>
+</ul>
<li><a href="Go.html#Go_primitive_type_mappings">Default Go primitive type mappings</a>
<li><a href="Go.html#Go_output_arguments">Output arguments</a>
<li><a href="Go.html#Go_adding_additional_code">Adding additional go code</a>
@@ -955,6 +965,10 @@
<li><a href="Java.html#Java_namespaces">C++ namespaces</a>
<li><a href="Java.html#Java_templates">C++ templates</a>
<li><a href="Java.html#Java_smart_pointers">C++ Smart Pointers</a>
+<ul>
+<li><a href="Java.html#Java_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="Java.html#Java_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
</ul>
<li><a href="Java.html#Java_further_details">Further details on the generated Java classes</a>
<ul>
@@ -1312,6 +1326,10 @@
<li><a href="Octave.html#Octave_nn19">Class extension with %extend</a>
<li><a href="Octave.html#Octave_nn20">C++ templates</a>
<li><a href="Octave.html#Octave_nn21">C++ Smart Pointers</a>
+<ul>
+<li><a href="Octave.html#Octave_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="Octave.html#Octave_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
<li><a href="Octave.html#Octave_nn22">Directors (calling Octave from C++ code)</a>
<li><a href="Octave.html#Octave_nn23">Threads</a>
<li><a href="Octave.html#Octave_nn24">Memory management</a>
@@ -1496,6 +1514,10 @@
<li><a href="Python.html#Python_nn25">C++ namespaces</a>
<li><a href="Python.html#Python_nn26">C++ templates</a>
<li><a href="Python.html#Python_nn27">C++ Smart Pointers</a>
+<ul>
+<li><a href="Python.html#Python_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="Python.html#Python_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
<li><a href="Python.html#Python_nn27a">C++ reference counted objects</a>
</ul>
<li><a href="Python.html#Python_nn28">Further details on the Python class interface</a>
@@ -1633,6 +1655,10 @@
<li><a href="Ruby.html#Ruby_C_STL_Functors">C++ STL Functors</a>
<li><a href="Ruby.html#Ruby_C_Iterators">C++ STL Iterators</a>
<li><a href="Ruby.html#Ruby_nn24">C++ Smart Pointers</a>
+<ul>
+<li><a href="Ruby.html#Ruby_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="Ruby.html#Ruby_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
<li><a href="Ruby.html#Ruby_nn25">Cross-Language Polymorphism</a>
<ul>
<li><a href="Ruby.html#Ruby_nn26">Exception Unrolling</a>
diff --git a/Doc/Manual/Go.html b/Doc/Manual/Go.html
index a62efec43..f5463c8f0 100644
--- a/Doc/Manual/Go.html
+++ b/Doc/Manual/Go.html
@@ -618,6 +618,7 @@ completely to avoid common pitfalls with directors in Go.
<H4><a name="Go_director_example_cpp_code"></a>23.4.7.1 Example C++ code</H4>
+
<p>
The step by step guide is based on two example C++ classes. FooBarAbstract is
an abstract C++ class and the FooBarCpp class inherits from it. This guide
diff --git a/Doc/Manual/Java.html b/Doc/Manual/Java.html
index 9d5c447f7..c33c1c16c 100644
--- a/Doc/Manual/Java.html
+++ b/Doc/Manual/Java.html
@@ -52,6 +52,10 @@
<li><a href="#Java_namespaces">C++ namespaces</a>
<li><a href="#Java_templates">C++ templates</a>
<li><a href="#Java_smart_pointers">C++ Smart Pointers</a>
+<ul>
+<li><a href="#Java_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="#Java_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
</ul>
<li><a href="#Java_further_details">Further details on the generated Java classes</a>
<ul>
@@ -1998,6 +2002,20 @@ More details can be found in the <a href="SWIGPlus.html#SWIGPlus">SWIG and C++</
<H3><a name="Java_smart_pointers"></a>25.3.15 C++ Smart Pointers</H3>
+<H4><a name="Java_smart_pointers_shared_ptr"></a>25.3.15.1 The shared_ptr Smart Pointer</H4>
+
+
+<p>
+The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
+implementation, <tt>boost::shared_ptr</tt>.
+Both of these are available for Java in the SWIG library and usage is outlined
+in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
+</p>
+
+
+<H4><a name="Java_smart_pointers_generic"></a>25.3.15.2 Generic Smart Pointers</H4>
+
+
<p>
In certain C++ programs, it is common to use classes that have been wrapped by
so-called "smart pointers." Generally, this involves the use of a template class
diff --git a/Doc/Manual/Octave.html b/Doc/Manual/Octave.html
index 5f8437a6a..53ee86f7c 100644
--- a/Doc/Manual/Octave.html
+++ b/Doc/Manual/Octave.html
@@ -33,6 +33,10 @@
<li><a href="#Octave_nn19">Class extension with %extend</a>
<li><a href="#Octave_nn20">C++ templates</a>
<li><a href="#Octave_nn21">C++ Smart Pointers</a>
+<ul>
+<li><a href="#Octave_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="#Octave_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
<li><a href="#Octave_nn22">Directors (calling Octave from C++ code)</a>
<li><a href="#Octave_nn23">Threads</a>
<li><a href="#Octave_nn24">Memory management</a>
@@ -718,6 +722,20 @@ ans =
<H3><a name="Octave_nn21"></a>32.3.12 C++ Smart Pointers</H3>
+<H4><a name="Octave_smart_pointers_shared_ptr"></a>32.3.12.1 The shared_ptr Smart Pointer</H4>
+
+
+<p>
+The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
+implementation, <tt>boost::shared_ptr</tt>.
+Both of these are available for Octave in the SWIG library and usage is outlined
+in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
+</p>
+
+
+<H4><a name="Octave_smart_pointers_generic"></a>32.3.12.2 Generic Smart Pointers</H4>
+
+
<p>
C++ smart pointers are fully supported as in other modules.
</p>
diff --git a/Doc/Manual/Python.html b/Doc/Manual/Python.html
index 3af79e8d6..77d0b7e81 100644
--- a/Doc/Manual/Python.html
+++ b/Doc/Manual/Python.html
@@ -38,6 +38,10 @@
<li><a href="#Python_nn25">C++ namespaces</a>
<li><a href="#Python_nn26">C++ templates</a>
<li><a href="#Python_nn27">C++ Smart Pointers</a>
+<ul>
+<li><a href="#Python_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="#Python_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
<li><a href="#Python_nn27a">C++ reference counted objects</a>
</ul>
<li><a href="#Python_nn28">Further details on the Python class interface</a>
@@ -2000,6 +2004,20 @@ examples will appear later.
<H3><a name="Python_nn27"></a>36.3.14 C++ Smart Pointers</H3>
+<H4><a name="Python_smart_pointers_shared_ptr"></a>36.3.14.1 The shared_ptr Smart Pointer</H4>
+
+
+<p>
+The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
+implementation, <tt>boost::shared_ptr</tt>.
+Both of these are available for Python in the SWIG library and usage is outlined
+in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
+</p>
+
+
+<H4><a name="Python_smart_pointers_generic"></a>36.3.14.2 Generic Smart Pointers</H4>
+
+
<p>
In certain C++ programs, it is common to use classes that have been wrapped by
so-called "smart pointers." Generally, this involves the use of a template class
diff --git a/Doc/Manual/Ruby.html b/Doc/Manual/Ruby.html
index d5faeb7b8..2de9f673e 100644
--- a/Doc/Manual/Ruby.html
+++ b/Doc/Manual/Ruby.html
@@ -42,6 +42,10 @@
<li><a href="#Ruby_C_STL_Functors">C++ STL Functors</a>
<li><a href="#Ruby_C_Iterators">C++ STL Iterators</a>
<li><a href="#Ruby_nn24">C++ Smart Pointers</a>
+<ul>
+<li><a href="#Ruby_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
+<li><a href="#Ruby_smart_pointers_generic">Generic Smart Pointers</a>
+</ul>
<li><a href="#Ruby_nn25">Cross-Language Polymorphism</a>
<ul>
<li><a href="#Ruby_nn26">Exception Unrolling</a>
@@ -1461,6 +1465,20 @@ i
<H3><a name="Ruby_nn24"></a>38.3.16 C++ Smart Pointers</H3>
+<H4><a name="Ruby_smart_pointers_shared_ptr"></a>38.3.16.1 The shared_ptr Smart Pointer</H4>
+
+
+<p>
+The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
+implementation, <tt>boost::shared_ptr</tt>.
+Both of these are available for Ruby in the SWIG library and usage is outlined
+in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
+</p>
+
+
+<H4><a name="Ruby_smart_pointers_generic"></a>38.3.16.2 Generic Smart Pointers</H4>
+
+
<p> In certain C++ programs, it is common to use classes that
have been wrapped by so-called "smart pointers." Generally, this
involves the use of a template class that implements <tt>operator-&gt;()</tt>