Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/boost_1_34_1/doc/html/boostbook.html @ 66

Last change on this file since 66 was 29, checked in by landauf, 16 years ago

updated boost from 1_33_1 to 1_34_1

File size: 7.3 KB
Line 
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
4<title>Chapter 22. The BoostBook Documentation Format</title>
5<link rel="stylesheet" href="boostbook.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
7<link rel="start" href="index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
8<link rel="up" href="tools.html" title="Part II. Boost Tools">
9<link rel="prev" href="tools.html" title="Part II. Boost Tools">
10<link rel="next" href="boostbook/getting/started.html" title="Getting Started">
11</head>
12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13<table cellpadding="2" width="100%">
14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../boost.png"></td>
15<td align="center"><a href="../../index.htm">Home</a></td>
16<td align="center"><a href="../../libs/libraries.htm">Libraries</a></td>
17<td align="center"><a href="../../people/people.htm">People</a></td>
18<td align="center"><a href="../../more/faq.htm">FAQ</a></td>
19<td align="center"><a href="../../more/index.htm">More</a></td>
20</table>
21<hr>
22<div class="spirit-nav">
23<a accesskey="p" href="tools.html"><img src="images/prev.png" alt="Prev"></a><a accesskey="u" href="tools.html"><img src="images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a><a accesskey="n" href="boostbook/getting/started.html"><img src="images/next.png" alt="Next"></a>
24</div>
25<div class="chapter" lang="en">
26<div class="titlepage"><div>
27<div><h2 class="title">
28<a name="boostbook"></a>Chapter 22. The BoostBook Documentation Format</h2></div>
29<div><div class="author"><h3 class="author">
30<span class="firstname">Douglas</span> <span class="surname">Gregor</span>
31</h3></div></div>
32<div><p class="copyright">Copyright © 2003-2005 Douglas Gregor</p></div>
33<div><div class="legalnotice">
34<a name="id2054833"></a><p>Permission to copy, use, sell and distribute this software
35      is granted provided this copyright notice appears in all copies.
36      Permission to modify the code and to distribute modified code is
37      granted provided this copyright notice appears in all copies,
38      and a notice that the code was modified is included with the
39      copyright notice. </p>
40<p> This software is provided "as is" without express or
41      implied warranty, and with no claim as to its suitability for
42      any purpose. </p>
43</div></div>
44</div></div>
45<div class="toc">
46<p><b>Table of Contents</b></p>
47<dl>
48<dt><span class="section"><a href="boostbook.html#boostbook.introduction">Introduction</a></span></dt>
49<dt><span class="section"><a href="boostbook/getting/started.html">Getting Started</a></span></dt>
50<dd><dl>
51<dt><span class="section"><a href="boostbook/getting/started.html#boostbook.setup.autounix">Automatic setup for Unix-like systems</a></span></dt>
52<dt><span class="section"><a href="boostbook/getting/started.html#boostbook.setup.manual">Manual setup for all systems</a></span></dt>
53<dt><span class="section"><a href="boostbook/getting/started.html#boostbook.setup.running">Running BoostBook</a></span></dt>
54<dt><span class="section"><a href="boostbook/getting/started.html#boostbook.setup.troubleshooting">Troubleshooting</a></span></dt>
55</dl></dd>
56<dt><span class="section"><a href="boostbook/documenting.html">Documenting libraries</a></span></dt>
57<dd><dl>
58<dt><span class="section"><a href="boostbook/documenting.html#boostbook.defining">Defining a BoostBook library</a></span></dt>
59<dt><span class="section"><a href="boostbook/documenting.html#id2056151">From HTML to BoostBook</a></span></dt>
60<dt><span class="section"><a href="boostbook/documenting.html#boostbook.sectioning">Sectioning in BoostBook</a></span></dt>
61</dl></dd>
62<dt><span class="section"><a href="boostbook/together.html">Bringing Together a BoostBook Document</a></span></dt>
63<dd><dl><dt><span class="section"><a href="boostbook/together.html#boostbook.linking">Linking in BoostBook</a></span></dt></dl></dd>
64<dt><span class="section"><a href="reference.html">Reference</a></span></dt>
65</dl>
66</div>
67<div class="section" lang="en">
68<div class="titlepage"><div><div><h2 class="title" style="clear: both">
69<a name="boostbook.introduction"></a>Introduction</h2></div></div></div>
70<p>The BoostBook documentation format is an extension of <a href="http://www.docbook.org" target="_top">DocBook</a>, an SGML- or
71    XML-based format for describing documentation. BoostBook augments
72    DocBook with semantic markup that aids in the documentation of C++
73    libraries, specifically the <a href="http://www.boost.org" target="_top">Boost C++ libraries</a>, by
74    providing the ability to express and refer to C++ constructs such
75    as namespaces, classes, overloaded functions, templates, and
76    specializations.</p>
77<p>
78    BoostBook offers additional features more specific to its use for
79    documenting the <a href="http://www.boost.org" target="_top">Boost C++
80    libraries</a>. These features are intended to eliminate or
81    reduce the need for duplication of information and to aid in
82    documenting portions of Boost that might otherwise not be
83    documented. Examples of Boost-centric features include:
84      </p>
85<div class="itemizedlist"><ul type="disc">
86<li><p><span class="bold"><strong>Testsuites</strong></span>:
87          Testsuites in Boost are created by writing an appropriate
88          Jamfile and including that Jamfile in
89          <code class="filename">status/Jamfile</code>. If the testsuites are
90          documented (<a href="http://www.boost.org/libs/multi_array/doc/test_cases.html" target="_top">as
91          in the MultiArray library</a>), the documentation is
92          maintained separately from the testcase Jamfile, leading to
93          duplication of information and the possibility of having the
94          documentation out of sync with the Jamfile. BoostBook
95          contains elements that describe a testsuite for both
96          purposes: the BoostBook stylesheets can generate
97          documentation for the testcases and also generate an
98          appropriate Jamfile to integrate the testcases with the
99          regression testing system.</p></li>
100<li>
101<p><span class="bold"><strong>Example programs</strong></span>:
102          Example programs in documentation need to be duplicated in
103          testcases to ensure that the examples compile and execute
104          correctly. Keeping the two copies in sync is a tedious and
105          error-prone task. For instance, the following code snippet
106          persisted for six months:</p>
107<pre class="programlisting">
108std::cout &lt;&lt; f(5, 3) &gt;&gt; std::endl;
109</pre>
110<p>The BoostBook format allows testcases to be generated
111          by weaving together program fragments from example programs
112          in the documentation. This capability is integrated with
113          testsuite generation so that example programs are normal
114          tests in BoostBook.</p>
115</li>
116</ul></div>
117<p>
118    </p>
119</div>
120</div>
121<table width="100%"><tr>
122<td align="left"></td>
123<td align="right"><small></small></td>
124</tr></table>
125<hr>
126<div class="spirit-nav">
127<a accesskey="p" href="tools.html"><img src="images/prev.png" alt="Prev"></a><a accesskey="u" href="tools.html"><img src="images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a><a accesskey="n" href="boostbook/getting/started.html"><img src="images/next.png" alt="Next"></a>
128</div>
129</body>
130</html>
Note: See TracBrowser for help on using the repository browser.