Update html chapter numbering for added Doxygen chapter

This commit is contained in:
William S Fulton 2018-05-24 18:36:20 +01:00
commit 4cdca98709
31 changed files with 1062 additions and 1039 deletions

View file

@ -7,7 +7,7 @@
</head>
<body bgcolor="#ffffff">
<H1><a name="Tcl">41 SWIG and Tcl</a></H1>
<H1><a name="Tcl">42 SWIG and Tcl</a></H1>
<!-- INDEX -->
<div class="sectiontoc">
<ul>
@ -84,7 +84,7 @@ Tcl 8.0 or a later release. Earlier releases of SWIG supported Tcl 7.x, but
this is no longer supported.
</p>
<H2><a name="Tcl_nn2">41.1 Preliminaries</a></H2>
<H2><a name="Tcl_nn2">42.1 Preliminaries</a></H2>
<p>
@ -110,7 +110,7 @@ build a Tcl extension module. To finish building the module, you
need to compile this file and link it with the rest of your program.
</p>
<H3><a name="Tcl_nn3">41.1.1 Getting the right header files</a></H3>
<H3><a name="Tcl_nn3">42.1.1 Getting the right header files</a></H3>
<p>
@ -128,7 +128,7 @@ this is the case, you should probably make a symbolic link so that <tt>tcl.h</tt
header file.
</p>
<H3><a name="Tcl_nn4">41.1.2 Compiling a dynamic module</a></H3>
<H3><a name="Tcl_nn4">42.1.2 Compiling a dynamic module</a></H3>
<p>
@ -164,7 +164,7 @@ The name of the module is specified using the <tt>%module</tt> directive or the
<tt>-module</tt> command line option.
</p>
<H3><a name="Tcl_nn5">41.1.3 Static linking</a></H3>
<H3><a name="Tcl_nn5">42.1.3 Static linking</a></H3>
<p>
@ -230,7 +230,7 @@ minimal in most situations (and quite frankly not worth the extra
hassle in the opinion of this author).
</p>
<H3><a name="Tcl_nn6">41.1.4 Using your module</a></H3>
<H3><a name="Tcl_nn6">42.1.4 Using your module</a></H3>
<p>
@ -358,7 +358,7 @@ to the default system configuration (this requires root access and you will need
the man pages).
</p>
<H3><a name="Tcl_nn7">41.1.5 Compilation of C++ extensions</a></H3>
<H3><a name="Tcl_nn7">42.1.5 Compilation of C++ extensions</a></H3>
<p>
@ -441,7 +441,7 @@ erratic program behavior. If working with lots of software components, you
might want to investigate using a more formal standard such as COM.
</p>
<H3><a name="Tcl_nn8">41.1.6 Compiling for 64-bit platforms</a></H3>
<H3><a name="Tcl_nn8">42.1.6 Compiling for 64-bit platforms</a></H3>
<p>
@ -468,7 +468,7 @@ also introduce problems on platforms that support more than one
linking standard (e.g., -o32 and -n32 on Irix).
</p>
<H3><a name="Tcl_nn9">41.1.7 Setting a package prefix</a></H3>
<H3><a name="Tcl_nn9">42.1.7 Setting a package prefix</a></H3>
<p>
@ -487,7 +487,7 @@ option will append the prefix to the name when creating a command and
call it "<tt>Foo_bar</tt>".
</p>
<H3><a name="Tcl_nn10">41.1.8 Using namespaces</a></H3>
<H3><a name="Tcl_nn10">42.1.8 Using namespaces</a></H3>
<p>
@ -509,7 +509,7 @@ When the <tt>-namespace</tt> option is used, objects in the module
are always accessed with the namespace name such as <tt>Foo::bar</tt>.
</p>
<H2><a name="Tcl_nn11">41.2 Building Tcl/Tk Extensions under Windows 95/NT</a></H2>
<H2><a name="Tcl_nn11">42.2 Building Tcl/Tk Extensions under Windows 95/NT</a></H2>
<p>
@ -520,7 +520,7 @@ covers the process of using SWIG with Microsoft Visual C++.
although the procedure may be similar with other compilers.
</p>
<H3><a name="Tcl_nn12">41.2.1 Running SWIG from Developer Studio</a></H3>
<H3><a name="Tcl_nn12">42.2.1 Running SWIG from Developer Studio</a></H3>
<p>
@ -578,7 +578,7 @@ MSDOS &gt; tclsh80
%
</pre></div>
<H3><a name="Tcl_nn13">41.2.2 Using NMAKE</a></H3>
<H3><a name="Tcl_nn13">42.2.2 Using NMAKE</a></H3>
<p>
@ -641,7 +641,7 @@ to get you started. With a little practice, you'll be making lots of
Tcl extensions.
</p>
<H2><a name="Tcl_nn14">41.3 A tour of basic C/C++ wrapping</a></H2>
<H2><a name="Tcl_nn14">42.3 A tour of basic C/C++ wrapping</a></H2>
<p>
@ -652,7 +652,7 @@ classes. This section briefly covers the essential aspects of this
wrapping.
</p>
<H3><a name="Tcl_nn15">41.3.1 Modules</a></H3>
<H3><a name="Tcl_nn15">42.3.1 Modules</a></H3>
<p>
@ -686,7 +686,7 @@ To fix this, supply an extra argument to <tt>load</tt> like this:
</pre>
</div>
<H3><a name="Tcl_nn16">41.3.2 Functions</a></H3>
<H3><a name="Tcl_nn16">42.3.2 Functions</a></H3>
<p>
@ -711,7 +711,7 @@ like you think it does:
%
</pre></div>
<H3><a name="Tcl_nn17">41.3.3 Global variables</a></H3>
<H3><a name="Tcl_nn17">42.3.3 Global variables</a></H3>
<p>
@ -791,7 +791,7 @@ extern char *path; // Read-only (due to %immutable)
</pre>
</div>
<H3><a name="Tcl_nn18">41.3.4 Constants and enums</a></H3>
<H3><a name="Tcl_nn18">42.3.4 Constants and enums</a></H3>
<p>
@ -875,7 +875,7 @@ When an identifier name is given, it is used to perform an implicit hash-table l
conversion. This allows the <tt>global</tt> statement to be omitted.
</p>
<H3><a name="Tcl_nn19">41.3.5 Pointers</a></H3>
<H3><a name="Tcl_nn19">42.3.5 Pointers</a></H3>
<p>
@ -971,7 +971,7 @@ C-style cast may return a bogus result whereas as the C++-style cast will return
<tt>None</tt> if the conversion can't be performed.
</p>
<H3><a name="Tcl_nn20">41.3.6 Structures</a></H3>
<H3><a name="Tcl_nn20">42.3.6 Structures</a></H3>
<p>
@ -1253,7 +1253,7 @@ Note: Tcl only destroys the underlying object if it has ownership. See the
memory management section that appears shortly.
</p>
<H3><a name="Tcl_nn21">41.3.7 C++ classes</a></H3>
<H3><a name="Tcl_nn21">42.3.7 C++ classes</a></H3>
<p>
@ -1319,7 +1319,7 @@ In Tcl, the static member is accessed as follows:
</pre>
</div>
<H3><a name="Tcl_nn22">41.3.8 C++ inheritance</a></H3>
<H3><a name="Tcl_nn22">42.3.8 C++ inheritance</a></H3>
<p>
@ -1368,7 +1368,7 @@ For instance:
It is safe to use multiple inheritance with SWIG.
</p>
<H3><a name="Tcl_nn23">41.3.9 Pointers, references, values, and arrays</a></H3>
<H3><a name="Tcl_nn23">42.3.9 Pointers, references, values, and arrays</a></H3>
<p>
@ -1422,7 +1422,7 @@ to hold the result and a pointer is returned (Tcl will release this memory
when the return value is garbage collected).
</p>
<H3><a name="Tcl_nn24">41.3.10 C++ overloaded functions</a></H3>
<H3><a name="Tcl_nn24">42.3.10 C++ overloaded functions</a></H3>
<p>
@ -1545,7 +1545,7 @@ first declaration takes precedence.
Please refer to the "SWIG and C++" chapter for more information about overloading.
</p>
<H3><a name="Tcl_nn25">41.3.11 C++ operators</a></H3>
<H3><a name="Tcl_nn25">42.3.11 C++ operators</a></H3>
<p>
@ -1647,7 +1647,7 @@ There are ways to make this operator appear as part of the class using the <tt>%
Keep reading.
</p>
<H3><a name="Tcl_nn26">41.3.12 C++ namespaces</a></H3>
<H3><a name="Tcl_nn26">42.3.12 C++ namespaces</a></H3>
<p>
@ -1711,7 +1711,7 @@ utilizes thousands of small deeply nested namespaces each with
identical symbol names, well, then you get what you deserve.
</p>
<H3><a name="Tcl_nn27">41.3.13 C++ templates</a></H3>
<H3><a name="Tcl_nn27">42.3.13 C++ templates</a></H3>
<p>
@ -1763,7 +1763,7 @@ More details can be found in the <a href="SWIGPlus.html#SWIGPlus">SWIG and C++</
examples will appear later.
</p>
<H3><a name="Tcl_nn28">41.3.14 C++ Smart Pointers</a></H3>
<H3><a name="Tcl_nn28">42.3.14 C++ Smart Pointers</a></H3>
<p>
@ -1847,7 +1847,7 @@ simply use the <tt>__deref__()</tt> method. For example:
</pre>
</div>
<H2><a name="Tcl_nn29">41.4 Further details on the Tcl class interface</a></H2>
<H2><a name="Tcl_nn29">42.4 Further details on the Tcl class interface</a></H2>
<p>
@ -1860,7 +1860,7 @@ of low-level details were omitted. This section provides a brief overview
of how the proxy classes work.
</p>
<H3><a name="Tcl_nn30">41.4.1 Proxy classes</a></H3>
<H3><a name="Tcl_nn30">42.4.1 Proxy classes</a></H3>
<p>
@ -1925,7 +1925,7 @@ function. This allows objects to be encapsulated objects that look a lot like
as shown in the last section.
</p>
<H3><a name="Tcl_nn31">41.4.2 Memory management</a></H3>
<H3><a name="Tcl_nn31">42.4.2 Memory management</a></H3>
<p>
@ -2113,7 +2113,7 @@ typemaps--an advanced topic discussed later.
</p>
<H2><a name="Tcl_nn32">41.5 Input and output parameters</a></H2>
<H2><a name="Tcl_nn32">42.5 Input and output parameters</a></H2>
<p>
@ -2301,7 +2301,7 @@ set c [lindex $dim 1]
</pre>
</div>
<H2><a name="Tcl_nn33">41.6 Exception handling </a></H2>
<H2><a name="Tcl_nn33">42.6 Exception handling </a></H2>
<p>
@ -2435,7 +2435,7 @@ Since SWIG's exception handling is user-definable, you are not limited to C++ ex
See the chapter on "<a href="Customization.html#Customization">Customization Features</a>" for more examples.
</p>
<H2><a name="Tcl_nn34">41.7 Typemaps</a></H2>
<H2><a name="Tcl_nn34">42.7 Typemaps</a></H2>
<p>
@ -2452,7 +2452,7 @@ Typemaps are only used if you want to change some aspect of the primitive
C-Tcl interface.
</p>
<H3><a name="Tcl_nn35">41.7.1 What is a typemap?</a></H3>
<H3><a name="Tcl_nn35">42.7.1 What is a typemap?</a></H3>
<p>
@ -2572,7 +2572,7 @@ parameter is omitted):
</pre>
</div>
<H3><a name="Tcl_nn36">41.7.2 Tcl typemaps</a></H3>
<H3><a name="Tcl_nn36">42.7.2 Tcl typemaps</a></H3>
<p>
@ -2710,7 +2710,7 @@ Initialize an argument to a value before any conversions occur.
Examples of these methods will appear shortly.
</p>
<H3><a name="Tcl_nn37">41.7.3 Typemap variables</a></H3>
<H3><a name="Tcl_nn37">42.7.3 Typemap variables</a></H3>
<p>
@ -2781,7 +2781,7 @@ properly assigned.
The Tcl name of the wrapper function being created.
</div>
<H3><a name="Tcl_nn38">41.7.4 Converting a Tcl list to a char ** </a></H3>
<H3><a name="Tcl_nn38">42.7.4 Converting a Tcl list to a char ** </a></H3>
<p>
@ -2843,7 +2843,7 @@ argv[2] = Larry
3
</pre></div>
<H3><a name="Tcl_nn39">41.7.5 Returning values in arguments</a></H3>
<H3><a name="Tcl_nn39">42.7.5 Returning values in arguments</a></H3>
<p>
@ -2885,7 +2885,7 @@ result, a Tcl function using these typemaps will work like this :
%
</pre></div>
<H3><a name="Tcl_nn40">41.7.6 Useful functions</a></H3>
<H3><a name="Tcl_nn40">42.7.6 Useful functions</a></H3>
<p>
@ -2961,7 +2961,7 @@ int Tcl_IsShared(Tcl_Obj *obj);
</pre>
</div>
<H3><a name="Tcl_nn41">41.7.7 Standard typemaps</a></H3>
<H3><a name="Tcl_nn41">42.7.7 Standard typemaps</a></H3>
<p>
@ -3045,7 +3045,7 @@ work)
</pre>
</div>
<H3><a name="Tcl_nn42">41.7.8 Pointer handling</a></H3>
<H3><a name="Tcl_nn42">42.7.8 Pointer handling</a></H3>
<p>
@ -3127,7 +3127,7 @@ For example:
</pre>
</div>
<H2><a name="Tcl_nn43">41.8 Turning a SWIG module into a Tcl Package.</a></H2>
<H2><a name="Tcl_nn43">42.8 Turning a SWIG module into a Tcl Package.</a></H2>
<p>
@ -3199,7 +3199,7 @@ As a final note, most SWIG examples do not yet use the
to use the <tt>load</tt> command instead.
</p>
<H2><a name="Tcl_nn44">41.9 Building new kinds of Tcl interfaces (in Tcl)</a></H2>
<H2><a name="Tcl_nn44">42.9 Building new kinds of Tcl interfaces (in Tcl)</a></H2>
<p>
@ -3298,7 +3298,7 @@ danger of blowing something up (although it is easily accomplished
with an out of bounds array access).
</p>
<H3><a name="Tcl_nn45">41.9.1 Proxy classes</a></H3>
<H3><a name="Tcl_nn45">42.9.1 Proxy classes</a></H3>
<p>
@ -3419,7 +3419,7 @@ short, but clever Tcl script can be combined with SWIG to do many
interesting things.
</p>
<H2><a name="Tcl_nn46">41.10 Tcl/Tk Stubs</a></H2>
<H2><a name="Tcl_nn46">42.10 Tcl/Tk Stubs</a></H2>
<p>