Correct links in html documentation using new version of makechap.py

Corrects position of heading text within A and H1, H2, ... elements.
This commit is contained in:
William S Fulton 2015-12-22 07:54:57 +00:00
commit 8288ac15a0
41 changed files with 1262 additions and 1262 deletions

View file

@ -6,7 +6,7 @@
</head>
<body bgcolor="#ffffff">
<H1><a name="Ocaml"></a>31 SWIG and Ocaml</H1>
<H1><a name="Ocaml">31 SWIG and Ocaml</a></H1>
<!-- INDEX -->
<div class="sectiontoc">
<ul>
@ -83,7 +83,7 @@ If you're not familiar with the Objective Caml language, you can visit
<a href="http://ocaml.org/">The Ocaml Website</a>.
</p>
<H2><a name="Ocaml_nn2"></a>31.1 Preliminaries</H2>
<H2><a name="Ocaml_nn2">31.1 Preliminaries</a></H2>
<p>
@ -101,7 +101,7 @@ file Examples/Makefile illustrate how to compile and link SWIG modules that
will be loaded dynamically. This has only been tested on Linux so far.
</p>
<H3><a name="Ocaml_nn3"></a>31.1.1 Running SWIG</H3>
<H3><a name="Ocaml_nn3">31.1.1 Running SWIG</a></H3>
<p>
@ -124,7 +124,7 @@ you will compile the file <tt>example_wrap.c</tt> with <tt>ocamlc</tt> or
the resulting .ml and .mli files as well, and do the final link with -custom
(not needed for native link).</p>
<H3><a name="Ocaml_nn4"></a>31.1.2 Compiling the code</H3>
<H3><a name="Ocaml_nn4">31.1.2 Compiling the code</a></H3>
<p>
@ -161,7 +161,7 @@ in C++ mode, you must:</p>
</pre>
</div>
<H3><a name="Ocaml_nn5"></a>31.1.3 The camlp4 module</H3>
<H3><a name="Ocaml_nn5">31.1.3 The camlp4 module</a></H3>
<p>
@ -237,7 +237,7 @@ let b = C_string (getenv "PATH")
</td></tr>
</table>
<H3><a name="Ocaml_nn6"></a>31.1.4 Using your module</H3>
<H3><a name="Ocaml_nn6">31.1.4 Using your module</a></H3>
<p>
@ -251,7 +251,7 @@ option to build your functions into the primitive list. This
option is not needed when you build native code.
</p>
<H3><a name="Ocaml_nn7"></a>31.1.5 Compilation problems and compiling with C++</H3>
<H3><a name="Ocaml_nn7">31.1.5 Compilation problems and compiling with C++</a></H3>
<p>
@ -262,7 +262,7 @@ liberal with pointer types may not compile under the C++ compiler.
Most code meant to be compiled as C++ will not have problems.
</p>
<H2><a name="Ocaml_nn8"></a>31.2 The low-level Ocaml/C interface</H2>
<H2><a name="Ocaml_nn8">31.2 The low-level Ocaml/C interface</a></H2>
<p>
@ -362,7 +362,7 @@ value items pass through directly, but you must make your own type
signature for a function that uses value in this way.
</p>
<H3><a name="Ocaml_nn9"></a>31.2.1 The generated module</H3>
<H3><a name="Ocaml_nn9">31.2.1 The generated module</a></H3>
<p>
@ -396,7 +396,7 @@ it describes the output SWIG will generate for class definitions.
</td></tr>
</table>
<H3><a name="Ocaml_nn10"></a>31.2.2 Enums</H3>
<H3><a name="Ocaml_nn10">31.2.2 Enums</a></H3>
<p>
@ -459,7 +459,7 @@ val x : Enum_test.c_obj = C_enum `a
</pre>
</div>
<H4><a name="Ocaml_nn11"></a>31.2.2.1 Enum typing in Ocaml</H4>
<H4><a name="Ocaml_nn11">31.2.2.1 Enum typing in Ocaml</a></H4>
<p>
@ -472,10 +472,10 @@ functions imported from different modules. You must convert values to master
values using the swig_val function before sharing them with another module.
</p>
<H3><a name="Ocaml_nn12"></a>31.2.3 Arrays</H3>
<H3><a name="Ocaml_nn12">31.2.3 Arrays</a></H3>
<H4><a name="Ocaml_nn13"></a>31.2.3.1 Simple types of bounded arrays</H4>
<H4><a name="Ocaml_nn13">31.2.3.1 Simple types of bounded arrays</a></H4>
<p>
@ -496,7 +496,7 @@ arrays of simple types with known bounds in your code, but this only works
for arrays whose bounds are completely specified.
</p>
<H4><a name="Ocaml_nn14"></a>31.2.3.2 Complex and unbounded arrays</H4>
<H4><a name="Ocaml_nn14">31.2.3.2 Complex and unbounded arrays</a></H4>
<p>
@ -509,7 +509,7 @@ SWIG can't predict which of these methods will be used in the array,
so you have to specify it for yourself in the form of a typemap.
</p>
<H4><a name="Ocaml_nn15"></a>31.2.3.3 Using an object</H4>
<H4><a name="Ocaml_nn15">31.2.3.3 Using an object</a></H4>
<p>
@ -523,7 +523,7 @@ Consider writing an object when the ending condition of your array is complex,
such as using a required sentinel, etc.
</p>
<H4><a name="Ocaml_nn16"></a>31.2.3.4 Example typemap for a function taking float * and int</H4>
<H4><a name="Ocaml_nn16">31.2.3.4 Example typemap for a function taking float * and int</a></H4>
<p>
@ -574,7 +574,7 @@ void printfloats( float *tab, int len );
</pre></td></tr></table>
<H3><a name="Ocaml_nn17"></a>31.2.4 C++ Classes</H3>
<H3><a name="Ocaml_nn17">31.2.4 C++ Classes</a></H3>
<p>
@ -617,7 +617,7 @@ the underlying pointer, so using create_[x]_from_ptr alters the
returned value for the same object.
</p>
<H4><a name="Ocaml_nn18"></a>31.2.4.1 STL vector and string Example</H4>
<H4><a name="Ocaml_nn18">31.2.4.1 STL vector and string Example</a></H4>
<p>
@ -697,7 +697,7 @@ baz
#
</pre></div>
<H4><a name="Ocaml_nn19"></a>31.2.4.2 C++ Class Example</H4>
<H4><a name="Ocaml_nn19">31.2.4.2 C++ Class Example</a></H4>
<p>
@ -727,7 +727,7 @@ public:
};
</pre></td></tr></table>
<H4><a name="Ocaml_nn20"></a>31.2.4.3 Compiling the example</H4>
<H4><a name="Ocaml_nn20">31.2.4.3 Compiling the example</a></H4>
<div class="code"><pre>
@ -745,7 +745,7 @@ bash-2.05a$ ocamlmktop -custom swig.cmo -I `camlp4 -where` \
-L$QTPATH/lib -cclib -lqt
</pre></div>
<H4><a name="Ocaml_nn21"></a>31.2.4.4 Sample Session</H4>
<H4><a name="Ocaml_nn21">31.2.4.4 Sample Session</a></H4>
<div class="code"><pre>
@ -772,10 +772,10 @@ Assuming you have a working installation of QT, you will see a window
containing the string "hi" in a button.
</p>
<H3><a name="Ocaml_nn22"></a>31.2.5 Director Classes</H3>
<H3><a name="Ocaml_nn22">31.2.5 Director Classes</a></H3>
<H4><a name="Ocaml_nn23"></a>31.2.5.1 Director Introduction</H4>
<H4><a name="Ocaml_nn23">31.2.5.1 Director Introduction</a></H4>
<p>
@ -802,7 +802,7 @@ class foo {
};
</pre></div>
<H4><a name="Ocaml_nn24"></a>31.2.5.2 Overriding Methods in Ocaml</H4>
<H4><a name="Ocaml_nn24">31.2.5.2 Overriding Methods in Ocaml</a></H4>
<p>
@ -830,7 +830,7 @@ In this example, I'll examine the objective caml code involved in providing
an overloaded class. This example is contained in Examples/ocaml/shapes.
</p>
<H4><a name="Ocaml_nn25"></a>31.2.5.3 Director Usage Example</H4>
<H4><a name="Ocaml_nn25">31.2.5.3 Director Usage Example</a></H4>
<table border="1" bgcolor="#dddddd" summary="Director usage example">
@ -889,7 +889,7 @@ in a more effortless style in ocaml, while leaving the "engine" part of the
program in C++.
</p>
<H4><a name="Ocaml_nn26"></a>31.2.5.4 Creating director objects</H4>
<H4><a name="Ocaml_nn26">31.2.5.4 Creating director objects</a></H4>
<p>
@ -930,7 +930,7 @@ object from causing a core dump, as long as the object is destroyed
properly.
</p>
<H4><a name="Ocaml_nn27"></a>31.2.5.5 Typemaps for directors, <tt>directorin, directorout, directorargout</tt></H4>
<H4><a name="Ocaml_nn27">31.2.5.5 Typemaps for directors, <tt>directorin, directorout, directorargout</tt></a></H4>
<p>
@ -941,7 +941,7 @@ well as a function return value in the same way you provide function arguments,
and to receive arguments the same way you normally receive function returns.
</p>
<H4><a name="Ocaml_nn28"></a>31.2.5.6 <tt>directorin</tt> typemap</H4>
<H4><a name="Ocaml_nn28">31.2.5.6 <tt>directorin</tt> typemap</a></H4>
<p>
@ -952,7 +952,7 @@ code receives when you are called. In general, a simple <tt>directorin</tt> typ
can use the same body as a simple <tt>out</tt> typemap.
</p>
<H4><a name="Ocaml_nn29"></a>31.2.5.7 <tt>directorout</tt> typemap</H4>
<H4><a name="Ocaml_nn29">31.2.5.7 <tt>directorout</tt> typemap</a></H4>
<p>
@ -963,7 +963,7 @@ for the same type, except when there are special requirements for object
ownership, etc.
</p>
<H4><a name="Ocaml_nn30"></a>31.2.5.8 <tt>directorargout</tt> typemap</H4>
<H4><a name="Ocaml_nn30">31.2.5.8 <tt>directorargout</tt> typemap</a></H4>
<p>
@ -980,7 +980,7 @@ In the event that you don't specify all of the necessary values, integral
values will read zero, and struct or object returns have undefined results.
</p>
<H3><a name="Ocaml_nn31"></a>31.2.6 Exceptions</H3>
<H3><a name="Ocaml_nn31">31.2.6 Exceptions</a></H3>
<p>