Add Quickbook support.

[SVN r72685]
This commit is contained in:
John Maddock 2011-06-19 16:44:32 +00:00
parent 26b491b303
commit 41d12f23ad
60 changed files with 360 additions and 226 deletions

View File

@ -291,6 +291,15 @@ directly inside a /book/ or /part/, in which case you should probably use the sa
you use for whatever subdivisions are in the /book/ or /part/. In any event placing a /section/ within a /book/ or you use for whatever subdivisions are in the /book/ or /part/. In any event placing a /section/ within a /book/ or
/part/ will result in invalid XML. /part/ will result in invalid XML.
Finally, if you are using Quickbook to generate the documentation, then you may wish to add:
[pre <include>$boost-root/tools/auto_index/include]
to your projects requirements (replacing $boost-root with the path to the root of the Boost tree), so that
the file auto_index_helpers.qbk can be included in your quickbook source with simply a:
[pre \[include auto_index_helpers.qbk\]]
[endsect] [/section:options Available Indexing Options] [endsect] [/section:options Available Indexing Options]
[section:optional Making AutoIndex optional] [section:optional Making AutoIndex optional]
@ -415,23 +424,21 @@ In Quickbook, you add the same markup but enclose it between two triple-tick \'\
thus thus
[pre \'\'\'<index\/>\'\'\' ] [pre \'\'\'<index\/>\'\'\' ]
Or more easily via the helper file auto_index_helpers.qbk, so that given:
[pre \[include auto_index_helpers.qbk\]]
one can simply write:
[pre
\[named_index class_name Class Index\]
\[named_index function_name Function Index\]
\[named_index typedef_name Typedef Index\]
\[named_index macro_name Macro Index\]
\[index\]
]
If you are writing a Quickbook document with Doxygen reference documentation,
the position of a `[xinclude autodoc.xml]` line in the Quickbook file
determines the location of the Doxygen references section.
You will almost certainly want this as well.
[pre
\[xinclude autodoc.xml\] # Using ['Doxygen reference documentation].
]
You can control the ['displayed name] of the Doxygen reference section thus
by adding to the end of the Doxygen autodoc section in your jamfile.
[pre
<xsl:param>"boost.doxygen.reftitle=Boost.mylibrary C++ Reference"
]
[note AutoIndex knows nothing of the XML `xinclude` element, so if [note AutoIndex knows nothing of the XML `xinclude` element, so if
you're writing raw Docbook XML then you may want to run this through an you're writing raw Docbook XML then you may want to run this through an
XSL processor to flatten everything to one XML file before passing to XSL processor to flatten everything to one XML file before passing to
@ -590,13 +597,16 @@ when AutoIndex uses them as an index entry:
If you add manual `<indexentry>` markup to your Docbook XML then these will be If you add manual `<indexentry>` markup to your Docbook XML then these will be
passed through unchanged. Please note however, that if you are using passed through unchanged. Please note however, that if you are using
AutoIndex's internal index generation then it only recognises AutoIndex's internal index generation then it only recognises
`<primary>` and `<secondary>` elements within the `<indexterm>`. `<primary>`, `<secondary>` and `<tertiary>` elements within the `<indexterm>`.
`<tertiary>`, `<see>` and `<seealso>` elements are not currently recognised `<see>` and `<seealso>` elements are not currently recognised
and auto-index will emit a warning if these are used. and auto-index will emit a warning if these are used.
Likewise none of the attributes which can be applied to these elements are used when Likewise none of the attributes which can be applied to these elements are used when
AutoIndex generates the index itself, with the exception of the `<type>` attribute. AutoIndex generates the index itself, with the exception of the `<type>` attribute.
For Quickbook users, there are some templates in auto_index_helpers.qbk that assist
in adding manual entries without having to escape to Docbook.
[endsect] [/section:entries Step 5: Add Manual Index Entries to Docbook XML - Optional] [endsect] [/section:entries Step 5: Add Manual Index Entries to Docbook XML - Optional]
[section:pis Step 6: Using XML processing instructions to control what gets indexed.] [section:pis Step 6: Using XML processing instructions to control what gets indexed.]
@ -629,6 +639,13 @@ then you can achieve this with the following XML processing instructions:
"bridgehead", "remark", "highlights", "abstract", "authorblurb" or "epigraph".]] "bridgehead", "remark", "highlights", "abstract", "authorblurb" or "epigraph".]]
] ]
For Quickbook users the file auto_index_helpers.qbk contains a helper template
that assists in inserting these processing instructions, for example:
[pre \[AutoIndex IgnoreSection\]]
Will cause that section to not be indexed.
[endsect] [/section:pis Step 6: Using XML processing instructions to control what gets indexed.] [endsect] [/section:pis Step 6: Using XML processing instructions to control what gets indexed.]
[section:build_docs Step 7: Build the Docs] [section:build_docs Step 7: Build the Docs]
@ -1057,6 +1074,50 @@ or from scanning source files) and the characters &, ", < and > will be escaped
[endsect] [/section:xml XML Handling] [endsect] [/section:xml XML Handling]
[section:qbk Quickbook Support]
The file auto_index_helpers.qbk in ['boost-path]/tools/auto_index/include contains various Quickbook
templates to assist with AutoIndex support. One would normally add the above path to your include
search path via an `<include>path` statement in your Jamfile, and then make the templates available
to your Quickbook source via a:
[pre \[include auto_index_helpers.qbk\]]
statement at the start of your Quickbook file.
The available templates are then:
[table
[[Template][Description]]
[[`[index]`][Creates a main index, with no "type" category set, which will be titled simply "Index".]]
[[`[named_index type title]`][Creates an index with the type attribute set to "type" and the title will be "title".[br]
For example to create an index containing only class names one would typically add `[named_index class_name Class Index]`
to your Quickbook source.]]
[[`[AutoIndex Arg]`][Creates a Docbook processing instruction that will be handled by AutoIndex, valid values for "Arg"
are either "IgnoreSection" or "IgnoreBlock".]]
[[`[indexterm1 primary-key]`][Creates a manual index entry that will link to the current section, and have a single primary key "primary-key".
Note that this index key will not have a "type" attribute set, and so will only appear in the main index.]]
[[`[indexterm2 primary-key secondary-key]`][Creates a manual index entry that will link to the current section, and has
"primary-key" and "secondary key" as the primary and secondary keys respectively.
Note that this index key will not have a "type" attribute set, and so will only appear in the main index.]]
[[`[indexterm3 primary-key secondary-key tertiary-key]`][Creates a manual index entry that will link to the current section,
and have primary, secondary and tertiary keys: "primary-key", "secondary key" and "tertiary key".
Note that this index key will not have a "type" attribute set, and so will only appear in the main index.]]
[[`[typed_indexterm1 type primary-key]`][Creates a manual index entry that will link to the current section, and have a single primary key "primary-key".
Note that this index key will have the "type" attribute set to the "type" argument, and so may appear in named sub-indexes
that also have their type attribute set.]]
[[`[typed_indexterm2 type primary-key secondary-key]`][Creates a manual index entry that will link to the current section, and has
"primary-key" and "secondary key" as the primary and secondary keys respectively.
Note that this index key will have the "type" attribute set to the "type" argument, and so may appear in named sub-indexes
that also have their type attribute set.]]
[[`[typed_indexterm3 type primary-key secondary-key tertiary-key]`][Creates a manual index entry that will link to the current section,
and have primary, secondary and tertiary keys: "primary-key", "secondary key" and "tertiary key".
Note that this index key will have the "type" attribute set to the "type" argument, and so may appear in named sub-indexes
that also have their type attribute set.]]
]
[endsect]
[section:comm_ref Command Line Reference] [section:comm_ref Command Line Reference]

View File

@ -6,13 +6,13 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0"> <meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="../index.html" title="AutoIndex"> <link rel="home" href="../index.html" title="AutoIndex">
<link rel="up" href="../index.html" title="AutoIndex"> <link rel="up" href="../index.html" title="AutoIndex">
<link rel="prev" href="xml.html" title="XML Handling"> <link rel="prev" href="qbk.html" title="Quickbook Support">
</head> </head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table> <table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
<hr> <hr>
<div class="spirit-nav"> <div class="spirit-nav">
<a accesskey="p" href="xml.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.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="p" href="qbk.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a>
</div> </div>
<div class="section" lang="en"> <div class="section" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both"> <div class="titlepage"><div><div><h2 class="title" style="clear: both">
@ -73,7 +73,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>
@ -81,7 +81,7 @@
</tr></table> </tr></table>
<hr> <hr>
<div class="spirit-nav"> <div class="spirit-nav">
<a accesskey="p" href="xml.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.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="p" href="qbk.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a>
</div> </div>
</body> </body>
</html> </html>

View File

@ -147,7 +147,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -23,7 +23,7 @@
The following elements can occur in a script: The following elements can occur in a script:
</p> </p>
<a name="autoindex.script_ref.comments_and_blank_lines"></a><h5> <a name="autoindex.script_ref.comments_and_blank_lines"></a><h5>
<a name="id891320"></a> <a name="autoindex.script_ref.comments_and_blank_lines-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.comments_and_blank_lines">Comments and <a class="link" href="script_ref.html#autoindex.script_ref.comments_and_blank_lines">Comments and
blank lines</a> blank lines</a>
</h5> </h5>
@ -40,7 +40,7 @@
</p></td></tr> </p></td></tr>
</table></div> </table></div>
<a name="autoindex.script_ref.inclusion_of_index_terms"></a><h5> <a name="autoindex.script_ref.inclusion_of_index_terms"></a><h5>
<a name="id891349"></a> <a name="autoindex.script_ref.inclusion_of_index_terms-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.inclusion_of_index_terms">Inclusion of <a class="link" href="script_ref.html#autoindex.script_ref.inclusion_of_index_terms">Inclusion of
Index terms</a> Index terms</a>
</h5> </h5>
@ -252,7 +252,7 @@
<pre class="programlisting"><span class="identifier">myterm</span> <span class="special">(?:</span><span class="identifier">search_expression1</span><span class="special">|</span><span class="identifier">search_expression1</span><span class="special">)</span> <span class="special">(?:</span><span class="identifier">constrait_expression2</span><span class="special">|</span><span class="identifier">constrait_expression2</span><span class="special">)</span> <span class="identifier">mycategory</span> <pre class="programlisting"><span class="identifier">myterm</span> <span class="special">(?:</span><span class="identifier">search_expression1</span><span class="special">|</span><span class="identifier">search_expression1</span><span class="special">)</span> <span class="special">(?:</span><span class="identifier">constrait_expression2</span><span class="special">|</span><span class="identifier">constrait_expression2</span><span class="special">)</span> <span class="identifier">mycategory</span>
</pre> </pre>
<a name="autoindex.script_ref.source_file_scanning"></a><h5> <a name="autoindex.script_ref.source_file_scanning"></a><h5>
<a name="id892002"></a> <a name="autoindex.script_ref.source_file_scanning-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.source_file_scanning">Source File Scanning</a> <a class="link" href="script_ref.html#autoindex.script_ref.source_file_scanning">Source File Scanning</a>
</h5> </h5>
<pre class="programlisting"><span class="special">!</span><span class="identifier">scan</span> <span class="identifier">source</span><span class="special">-</span><span class="identifier">file</span><span class="special">-</span><span class="identifier">name</span> <pre class="programlisting"><span class="special">!</span><span class="identifier">scan</span> <span class="identifier">source</span><span class="special">-</span><span class="identifier">file</span><span class="special">-</span><span class="identifier">name</span>
@ -281,7 +281,7 @@
</p></td></tr> </p></td></tr>
</table></div> </table></div>
<a name="autoindex.script_ref.directory_and_source_file_scanning"></a><h5> <a name="autoindex.script_ref.directory_and_source_file_scanning"></a><h5>
<a name="id892080"></a> <a name="autoindex.script_ref.directory_and_source_file_scanning-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.directory_and_source_file_scanning">Directory <a class="link" href="script_ref.html#autoindex.script_ref.directory_and_source_file_scanning">Directory
and Source File Scanning</a> and Source File Scanning</a>
</h5> </h5>
@ -310,7 +310,7 @@
</dl> </dl>
</div> </div>
<a name="autoindex.script_ref.excluding_terms"></a><h5> <a name="autoindex.script_ref.excluding_terms"></a><h5>
<a name="id892205"></a> <a name="autoindex.script_ref.excluding_terms-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.excluding_terms">Excluding Terms</a> <a class="link" href="script_ref.html#autoindex.script_ref.excluding_terms">Excluding Terms</a>
</h5> </h5>
<pre class="programlisting"><span class="special">!</span><span class="identifier">exclude</span> <span class="identifier">term</span><span class="special">-</span><span class="identifier">list</span> <pre class="programlisting"><span class="special">!</span><span class="identifier">exclude</span> <span class="identifier">term</span><span class="special">-</span><span class="identifier">list</span>
@ -323,7 +323,7 @@
of things to index. of things to index.
</p> </p>
<a name="autoindex.script_ref.rewriting_section_names"></a><h5> <a name="autoindex.script_ref.rewriting_section_names"></a><h5>
<a name="id892260"></a> <a name="autoindex.script_ref.rewriting_section_names-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.rewriting_section_names">Rewriting Section <a class="link" href="script_ref.html#autoindex.script_ref.rewriting_section_names">Rewriting Section
Names</a> Names</a>
</h5> </h5>
@ -370,7 +370,7 @@
all index entries - thus preventing lots of entries under "The" etc! all index entries - thus preventing lots of entries under "The" etc!
</p> </p>
<a name="autoindex.script_ref.defining_or_changing_the_file_scanners"></a><h5> <a name="autoindex.script_ref.defining_or_changing_the_file_scanners"></a><h5>
<a name="id892413"></a> <a name="autoindex.script_ref.defining_or_changing_the_file_scanners-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.defining_or_changing_the_file_scanners">Defining <a class="link" href="script_ref.html#autoindex.script_ref.defining_or_changing_the_file_scanners">Defining
or Changing the File Scanners</a> or Changing the File Scanners</a>
</h5> </h5>
@ -457,8 +457,8 @@
</p> </p>
<pre class="programlisting"><span class="keyword">class</span> <span class="identifier">my_class</span> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">base_classes</span> <pre class="programlisting"><span class="keyword">class</span> <span class="identifier">my_class</span> <span class="special">:</span> <span class="keyword">public</span> <span class="identifier">base_classes</span>
<span class="special">{</span> <span class="special">{</span>
<span class="comment">// etc <span class="comment">// etc</span>
</span></pre> </pre>
<p> <p>
In the documentation, so that simple mentions of the class name will <span class="emphasis"><em>not</em></span> In the documentation, so that simple mentions of the class name will <span class="emphasis"><em>not</em></span>
get indexed, only the class synopsis if there is one. If this isn't how you get indexed, only the class synopsis if there is one. If this isn't how you
@ -473,7 +473,7 @@
scanner may find in the documentation. scanner may find in the documentation.
</p> </p>
<a name="autoindex.script_ref.debugging_scanning"></a><h5> <a name="autoindex.script_ref.debugging_scanning"></a><h5>
<a name="id892916"></a> <a name="autoindex.script_ref.debugging_scanning-heading"></a>
<a class="link" href="script_ref.html#autoindex.script_ref.debugging_scanning">Debugging scanning</a> <a class="link" href="script_ref.html#autoindex.script_ref.debugging_scanning">Debugging scanning</a>
</h5> </h5>
<p> <p>
@ -503,7 +503,7 @@ The index type for this entry is: qi_index
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -44,7 +44,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -71,20 +71,17 @@
</p> </p>
<pre class="programlisting">'''&lt;index/&gt;''' </pre> <pre class="programlisting">'''&lt;index/&gt;''' </pre>
<p> <p>
If you are writing a Quickbook document with Doxygen reference documentation, Or more easily via the helper file auto_index_helpers.qbk, so that given:
the position of a <code class="computeroutput"><span class="special">[</span><span class="identifier">xinclude</span>
<span class="identifier">autodoc</span><span class="special">.</span><span class="identifier">xml</span><span class="special">]</span></code> line
in the Quickbook file determines the location of the Doxygen references section.
You will almost certainly want this as well.
</p> </p>
<pre class="programlisting">[xinclude autodoc.xml] # Using <span class="emphasis"><em>Doxygen reference documentation</em></span>. <pre class="programlisting">[include auto_index_helpers.qbk]</pre>
</pre>
<p> <p>
You can control the <span class="emphasis"><em>displayed name</em></span> of the Doxygen reference one can simply write:
section thus by adding to the end of the Doxygen autodoc section in your
jamfile.
</p> </p>
<pre class="programlisting">&lt;xsl:param&gt;"boost.doxygen.reftitle=Boost.mylibrary C++ Reference" <pre class="programlisting">[named_index class_name Class Index]
[named_index function_name Function Index]
[named_index typedef_name Typedef Index]
[named_index macro_name Macro Index]
[index]
</pre> </pre>
<div class="note"><table border="0" summary="Note"> <div class="note"><table border="0" summary="Note">
<tr> <tr>
@ -156,7 +153,7 @@ boostbook standalone
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -55,7 +55,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -56,7 +56,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -118,7 +118,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -85,7 +85,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -384,10 +384,21 @@
placing a <span class="emphasis"><em>section</em></span> within a <span class="emphasis"><em>book</em></span> placing a <span class="emphasis"><em>section</em></span> within a <span class="emphasis"><em>book</em></span>
or <span class="emphasis"><em>part</em></span> will result in invalid XML. or <span class="emphasis"><em>part</em></span> will result in invalid XML.
</p> </p>
<p>
Finally, if you are using Quickbook to generate the documentation, then
you may wish to add:
</p>
<pre class="programlisting">&lt;include&gt;$boost-root/tools/auto_index/include</pre>
<p>
to your projects requirements (replacing $boost-root with the path to the
root of the Boost tree), so that the file auto_index_helpers.qbk can be
included in your quickbook source with simply a:
</p>
<pre class="programlisting">[include auto_index_helpers.qbk]</pre>
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -23,8 +23,8 @@
<p> <p>
If you add manual <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">indexentry</span><span class="special">&gt;</span></code> markup to your Docbook XML then these If you add manual <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">indexentry</span><span class="special">&gt;</span></code> markup to your Docbook XML then these
will be passed through unchanged. Please note however, that if you are using will be passed through unchanged. Please note however, that if you are using
AutoIndex's internal index generation then it only recognises <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">primary</span><span class="special">&gt;</span></code> and <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">secondary</span><span class="special">&gt;</span></code> AutoIndex's internal index generation then it only recognises <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">primary</span><span class="special">&gt;</span></code>, <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">secondary</span><span class="special">&gt;</span></code>
elements within the <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">indexterm</span><span class="special">&gt;</span></code>. <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">tertiary</span><span class="special">&gt;</span></code>, and <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">tertiary</span><span class="special">&gt;</span></code> elements within the <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">indexterm</span><span class="special">&gt;</span></code>.
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">see</span><span class="special">&gt;</span></code> and <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">seealso</span><span class="special">&gt;</span></code> <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">see</span><span class="special">&gt;</span></code> and <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">seealso</span><span class="special">&gt;</span></code>
elements are not currently recognised and auto-index will emit a warning elements are not currently recognised and auto-index will emit a warning
if these are used. if these are used.
@ -34,10 +34,14 @@
used when AutoIndex generates the index itself, with the exception of the used when AutoIndex generates the index itself, with the exception of the
<code class="computeroutput"><span class="special">&lt;</span><span class="identifier">type</span><span class="special">&gt;</span></code> attribute. <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">type</span><span class="special">&gt;</span></code> attribute.
</p> </p>
<p>
For Quickbook users, there are some templates in auto_index_helpers.qbk that
assist in adding manual entries without having to escape to Docbook.
</p>
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -99,10 +99,18 @@
</tr> </tr>
</tbody> </tbody>
</table></div> </table></div>
<p>
For Quickbook users the file auto_index_helpers.qbk contains a helper template
that assists in inserting these processing instructions, for example:
</p>
<pre class="programlisting">[AutoIndex IgnoreSection]</pre>
<p>
Will cause that section to not be indexed.
</p>
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -52,7 +52,7 @@
</p></td></tr> </p></td></tr>
</table></div> </table></div>
<a name="autoindex.tut.refine.restricting_which_sections_are_indexed_for_a_particular_term"></a><h5> <a name="autoindex.tut.refine.restricting_which_sections_are_indexed_for_a_particular_term"></a><h5>
<a name="id891258"></a> <a name="autoindex.tut.refine.restricting_which_sections_are_indexed_for_a_particular_term-heading"></a>
<a class="link" href="refine.html#autoindex.tut.refine.restricting_which_sections_are_indexed_for_a_particular_term">Restricting <a class="link" href="refine.html#autoindex.tut.refine.restricting_which_sections_are_indexed_for_a_particular_term">Restricting
which Sections are indexed for a particular term</a> which Sections are indexed for a particular term</a>
</h5> </h5>
@ -78,7 +78,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -139,7 +139,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -69,7 +69,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -7,13 +7,13 @@
<link rel="home" href="../index.html" title="AutoIndex"> <link rel="home" href="../index.html" title="AutoIndex">
<link rel="up" href="../index.html" title="AutoIndex"> <link rel="up" href="../index.html" title="AutoIndex">
<link rel="prev" href="workflow.html" title="Understanding The AutoIndex Workflow"> <link rel="prev" href="workflow.html" title="Understanding The AutoIndex Workflow">
<link rel="next" href="comm_ref.html" title="Command Line Reference"> <link rel="next" href="qbk.html" title="Quickbook Support">
</head> </head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table> <table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
<hr> <hr>
<div class="spirit-nav"> <div class="spirit-nav">
<a accesskey="p" href="workflow.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.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="comm_ref.html"><img src="../images/next.png" alt="Next"></a> <a accesskey="p" href="workflow.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.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="qbk.html"><img src="../images/next.png" alt="Next"></a>
</div> </div>
<div class="section" lang="en"> <div class="section" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both"> <div class="titlepage"><div><div><h2 class="title" style="clear: both">
@ -44,7 +44,7 @@
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td> <td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 , 2011 John Maddock<p> <td align="right"><div class="copyright-footer">Copyright &#169; 2008, 2011 John Maddock<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>
@ -52,7 +52,7 @@
</tr></table> </tr></table>
<hr> <hr>
<div class="spirit-nav"> <div class="spirit-nav">
<a accesskey="p" href="workflow.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.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="comm_ref.html"><img src="../images/next.png" alt="Next"></a> <a accesskey="p" href="workflow.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.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="qbk.html"><img src="../images/next.png" alt="Next"></a>
</div> </div>
</body> </body>
</html> </html>

View File

@ -19,9 +19,9 @@
<div><div class="authorgroup"><div class="author"><h3 class="author"> <div><div class="authorgroup"><div class="author"><h3 class="author">
<span class="firstname">John</span> <span class="surname">Maddock</span> <span class="firstname">John</span> <span class="surname">Maddock</span>
</h3></div></div></div> </h3></div></div></div>
<div><p class="copyright">Copyright &#169; 2008 , 2011 John Maddock</p></div> <div><p class="copyright">Copyright &#169; 2008, 2011 John Maddock</p></div>
<div><div class="legalnotice"> <div><div class="legalnotice">
<a name="id881977"></a><p> <a name="id894882"></a><p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>
@ -59,12 +59,13 @@
<dt><span class="section"><a href="autoindex/script_ref.html">Script File (.idx) Reference</a></span></dt> <dt><span class="section"><a href="autoindex/script_ref.html">Script File (.idx) Reference</a></span></dt>
<dt><span class="section"><a href="autoindex/workflow.html">Understanding The AutoIndex Workflow</a></span></dt> <dt><span class="section"><a href="autoindex/workflow.html">Understanding The AutoIndex Workflow</a></span></dt>
<dt><span class="section"><a href="autoindex/xml.html">XML Handling</a></span></dt> <dt><span class="section"><a href="autoindex/xml.html">XML Handling</a></span></dt>
<dt><span class="section"><a href="autoindex/qbk.html">Quickbook Support</a></span></dt>
<dt><span class="section"><a href="autoindex/comm_ref.html">Command Line Reference</a></span></dt> <dt><span class="section"><a href="autoindex/comm_ref.html">Command Line Reference</a></span></dt>
</dl> </dl>
</div> </div>
</div> </div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"><p><small>Last revised: June 18, 2011 at 17:55:18 GMT</small></p></td> <td align="left"><p><small>Last revised: June 19, 2011 at 16:23:27 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td> <td align="right"><div class="copyright-footer"></div></td>
</tr></table> </tr></table>
<hr> <hr>

View File

@ -74,3 +74,4 @@ install pdf-install : standalone : <location>. <install-type>PDF <name>type_trai

View File

@ -6,7 +6,7 @@
] ]
[section:add_const add_const] [section:add_const add_const]
'''<?BoostAutoIndex IgnoreSection?>''' [AutoIndex IgnoreSection]
template <class T> template <class T>
struct add_const struct add_const
@ -24,9 +24,8 @@ type `T` except where __transform_workaround have been applied.
__header ` #include <boost/type_traits/add_const.hpp>` or ` #include <boost/type_traits.hpp>` __header ` #include <boost/type_traits/add_const.hpp>` or ` #include <boost/type_traits.hpp>`
''' [indexterm2 one two]
<indexterm><primary>one</primary><secondary>two</secondary></indexterm> [typed_indexterm2 class_name..Level One..Level Two]
'''
[table Examples [table Examples

View File

@ -23,9 +23,8 @@ type `T` except where __transform_workaround have been applied.
__header ` #include <boost/type_traits/add_cv.hpp>` or ` #include <boost/type_traits.hpp>` __header ` #include <boost/type_traits/add_cv.hpp>` or ` #include <boost/type_traits.hpp>`
''' [typed_indexterm3 class_name..Level One..Level Two..Level Three]
<indexterm><primary>one</primary><secondary>two</secondary><tertiary>three</tertiary></indexterm> [indexterm3 one two three]
'''
[table Examples [table Examples

View File

@ -23,9 +23,8 @@ type `T` except where __transform_workaround have been applied.
__header ` #include <boost/type_traits/add_volatile.hpp>` or ` #include <boost/type_traits.hpp>` __header ` #include <boost/type_traits/add_volatile.hpp>` or ` #include <boost/type_traits.hpp>`
''' [typed_indexterm1 class_name..Level One]
<indexterm><primary>one</primary></indexterm> [indexterm1 one]
'''
[table Examples [table Examples

View File

@ -49,7 +49,7 @@
method available to them. method available to them.
</p> </p>
<a name="boost_typetraits.background.type_traits"></a><h5> <a name="boost_typetraits.background.type_traits"></a><h5>
<a name="id905869"></a> <a name="boost_typetraits.background.type_traits-heading"></a>
<a class="link" href="background.html#boost_typetraits.background.type_traits">Type Traits</a> <a class="link" href="background.html#boost_typetraits.background.type_traits">Type Traits</a>
</h5> </h5>
<p> <p>
@ -77,7 +77,7 @@
given. given.
</p> </p>
<a name="boost_typetraits.background.implementation"></a><h5> <a name="boost_typetraits.background.implementation"></a><h5>
<a name="id905932"></a> <a name="boost_typetraits.background.implementation-heading"></a>
<a class="link" href="background.html#boost_typetraits.background.implementation">Implementation</a> <a class="link" href="background.html#boost_typetraits.background.implementation">Implementation</a>
</h5> </h5>
<p> <p>
@ -167,7 +167,7 @@
in the default template. in the default template.
</p> </p>
<a name="boost_typetraits.background.optimized_copy"></a><h5> <a name="boost_typetraits.background.optimized_copy"></a><h5>
<a name="id906669"></a> <a name="boost_typetraits.background.optimized_copy-heading"></a>
<a class="link" href="background.html#boost_typetraits.background.optimized_copy">Optimized copy</a> <a class="link" href="background.html#boost_typetraits.background.optimized_copy">Optimized copy</a>
</h5> </h5>
<p> <p>
@ -231,16 +231,16 @@
examples</a>. The code begins by defining a template function <code class="computeroutput"><span class="identifier">do_copy</span></code> that performs a "slow but safe" examples</a>. The code begins by defining a template function <code class="computeroutput"><span class="identifier">do_copy</span></code> that performs a "slow but safe"
copy. The last parameter passed to this function may be either a <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a></code> copy. The last parameter passed to this function may be either a <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a></code>
or a <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a></code>. or a <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">false_type</a></code>.
Following that there is an overload of do<span class="underline">copy that Following that there is an overload of do_copy that uses <code class="computeroutput"><span class="identifier">memcpy</span></code>:
uses `memcpy`: this time the iterators are required to actually be pointers this time the iterators are required to actually be pointers to the same type,
to the same type, and the final parameter must be a `</span>_true_type<code class="computeroutput"><span class="special">.</span> <span class="identifier">Finally</span><span class="special">,</span> <span class="identifier">the</span> <span class="identifier">version</span> and the final parameter must be a <code class="computeroutput"><a class="link" href="reference/integral_constant.html" title="integral_constant">true_type</a></code>.
<span class="identifier">of</span> </code>copy<code class="computeroutput"> <span class="identifier">calls</span> Finally, the version of <code class="computeroutput"><span class="identifier">copy</span></code>
</code>do<span class="underline">copy`, passing `</span>_has_trivial_assign&lt;value_type&gt;()` calls <code class="computeroutput"><span class="identifier">do_copy</span></code>, passing <code class="computeroutput"><a class="link" href="reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;()</span></code> as the final parameter: this will dispatch
as the final parameter: this will dispatch to the optimized version where appropriate, to the optimized version where appropriate, otherwise it will call the "slow
otherwise it will call the "slow but safe version". but safe version".
</p> </p>
<a name="boost_typetraits.background.was_it_worth_it_"></a><h5> <a name="boost_typetraits.background.was_it_worth_it_"></a><h5>
<a name="id907035"></a> <a name="boost_typetraits.background.was_it_worth_it_-heading"></a>
<a class="link" href="background.html#boost_typetraits.background.was_it_worth_it_">Was it worth it?</a> <a class="link" href="background.html#boost_typetraits.background.was_it_worth_it_">Was it worth it?</a>
</h5> </h5>
<p> <p>
@ -273,7 +273,7 @@
</li> </li>
</ul></div> </ul></div>
<div class="table"> <div class="table">
<a name="id907081"></a><p class="title"><b>Table&#160;1.1.&#160;Time taken to copy 1000 elements using `copy&lt;const T*, T*&gt;` (times <a name="id893975"></a><p class="title"><b>Table&#160;1.1.&#160;Time taken to copy 1000 elements using `copy&lt;const T*, T*&gt;` (times
in micro-seconds)</b></p> in micro-seconds)</b></p>
<div class="table-contents"><table class="table" summary="Time taken to copy 1000 elements using `copy&lt;const T*, T*&gt;` (times <div class="table-contents"><table class="table" summary="Time taken to copy 1000 elements using `copy&lt;const T*, T*&gt;` (times
in micro-seconds)"> in micro-seconds)">
@ -372,7 +372,7 @@
</table></div> </table></div>
</div> </div>
<br class="table-break"><a name="boost_typetraits.background.pair_of_references"></a><h5> <br class="table-break"><a name="boost_typetraits.background.pair_of_references"></a><h5>
<a name="id907231"></a> <a name="boost_typetraits.background.pair_of_references-heading"></a>
<a class="link" href="background.html#boost_typetraits.background.pair_of_references">Pair of References</a> <a class="link" href="background.html#boost_typetraits.background.pair_of_references">Pair of References</a>
</h5> </h5>
<p> <p>
@ -409,7 +409,7 @@
to hold non-reference types, references, and constant references: to hold non-reference types, references, and constant references:
</p> </p>
<div class="table"> <div class="table">
<a name="id910780"></a><p class="title"><b>Table&#160;1.2.&#160;Required Constructor Argument Types</b></p> <a name="id897675"></a><p class="title"><b>Table&#160;1.2.&#160;Required Constructor Argument Types</b></p>
<div class="table-contents"><table class="table" summary="Required Constructor Argument Types"> <div class="table-contents"><table class="table" summary="Required Constructor Argument Types">
<colgroup> <colgroup>
<col> <col>
@ -474,7 +474,7 @@
adds a reference to its type, unless it is already a reference. adds a reference to its type, unless it is already a reference.
</p> </p>
<div class="table"> <div class="table">
<a name="id910888"></a><p class="title"><b>Table&#160;1.3.&#160;Using add_reference to synthesize the correct constructor type</b></p> <a name="id897783"></a><p class="title"><b>Table&#160;1.3.&#160;Using add_reference to synthesize the correct constructor type</b></p>
<div class="table-contents"><table class="table" summary="Using add_reference to synthesize the correct constructor type"> <div class="table-contents"><table class="table" summary="Using add_reference to synthesize the correct constructor type">
<colgroup> <colgroup>
<col> <col>
@ -590,7 +590,7 @@
easier to maintain and easier to understand. easier to maintain and easier to understand.
</p> </p>
<a name="boost_typetraits.background.conclusion"></a><h5> <a name="boost_typetraits.background.conclusion"></a><h5>
<a name="id911357"></a> <a name="boost_typetraits.background.conclusion-heading"></a>
<a class="link" href="background.html#boost_typetraits.background.conclusion">Conclusion</a> <a class="link" href="background.html#boost_typetraits.background.conclusion">Conclusion</a>
</h5> </h5>
<p> <p>
@ -603,16 +603,16 @@
can be optimal as well as generic. can be optimal as well as generic.
</p> </p>
<a name="boost_typetraits.background.acknowledgements"></a><h5> <a name="boost_typetraits.background.acknowledgements"></a><h5>
<a name="id911374"></a> <a name="boost_typetraits.background.acknowledgements-heading"></a>
<a class="link" href="background.html#boost_typetraits.background.acknowledgements">Acknowledgements</a> <a class="link" href="background.html#boost_typetraits.background.acknowledgements">Acknowledgements</a>
</h5> </h5>
<p> <p>
The authors would like to thank Beman Dawes and Howard Hinnant for their helpful The authors would like to thank Beman Dawes and Howard Hinnant for their helpful
comments when preparing this article. comments when preparing this article.
</p> </p>
<a name="boost_typetraits.background._anchor_id__background_references____references"></a><h5> <a name="boost_typetraits.background._anchor_id__background_references___references"></a><h5>
<a name="id911391"></a> <a name="boost_typetraits.background._anchor_id__background_references___references-heading"></a>
<a class="link" href="background.html#boost_typetraits.background._anchor_id__background_references____references"><a name="background.references"></a> References</a> <a class="link" href="background.html#boost_typetraits.background._anchor_id__background_references___references"><a name="background.references"></a>References</a>
</h5> </h5>
<div class="orderedlist"><ol type="1"> <div class="orderedlist"><ol type="1">
<li> <li>

View File

@ -84,7 +84,7 @@
<span class="keyword">struct</span> <a class="link" href="../reference/remove_volatile.html" title="remove_volatile">remove_volatile</a><span class="special">;</span> <span class="keyword">struct</span> <a class="link" href="../reference/remove_volatile.html" title="remove_volatile">remove_volatile</a><span class="special">;</span>
</pre> </pre>
<a name="boost_typetraits.category.transform.broken_compiler_workarounds_"></a><h5> <a name="boost_typetraits.category.transform.broken_compiler_workarounds_"></a><h5>
<a name="id915130"></a> <a name="boost_typetraits.category.transform.broken_compiler_workarounds_-heading"></a>
<a class="link" href="transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">Broken <a class="link" href="transform.html#boost_typetraits.category.transform.broken_compiler_workarounds_">Broken
Compiler Workarounds:</a> Compiler Workarounds:</a>
</h5> </h5>
@ -127,13 +127,13 @@
<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">myspace</span><span class="special">{</span> <pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">myspace</span><span class="special">{</span>
<span class="keyword">struct</span> <span class="identifier">MyClass</span> <span class="special">{};</span> <span class="keyword">struct</span> <span class="identifier">MyClass</span> <span class="special">{};</span>
<span class="special">}</span> <span class="special">}</span>
<span class="comment">// declare this at global scope: <span class="comment">// declare this at global scope:</span>
</span><span class="identifier">BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION</span><span class="special">(</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">)</span> <span class="identifier">BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION</span><span class="special">(</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">)</span>
<span class="comment">// transformations on myspace::MyClass now work: <span class="comment">// transformations on myspace::MyClass now work:</span>
</span><span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span> <span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span>
<span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">,</span> <span class="identifier">remove_const</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span> <span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">((</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span><span class="special">,</span> <span class="identifier">remove_const</span><span class="special">&lt;</span><span class="identifier">myspace</span><span class="special">::</span><span class="identifier">MyClass</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">value</span><span class="special">));</span>
<span class="comment">// etc. <span class="comment">// etc.</span>
</span></pre> </pre>
<p> <p>
Note that the macro BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION evaluates Note that the macro BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION evaluates
to nothing on those compilers that <span class="bold"><strong>do</strong></span> support to nothing on those compilers that <span class="bold"><strong>do</strong></span> support

View File

@ -26,12 +26,12 @@
to determine whether to use <code class="computeroutput"><span class="identifier">memcpy</span></code> to determine whether to use <code class="computeroutput"><span class="identifier">memcpy</span></code>
to optimise the copy operation (see <a href="../../../../examples/copy_example.cpp" target="_top">copy_example.cpp</a>): to optimise the copy operation (see <a href="../../../../examples/copy_example.cpp" target="_top">copy_example.cpp</a>):
</p> </p>
<pre class="programlisting"><span class="comment">// <pre class="programlisting"><span class="comment">//</span>
</span><span class="comment">// opt::copy <span class="comment">// opt::copy</span>
</span><span class="comment">// same semantics as std::copy <span class="comment">// same semantics as std::copy</span>
</span><span class="comment">// calls memcpy where appropriate. <span class="comment">// calls memcpy where appropriate.</span>
</span><span class="comment">// <span class="comment">//</span>
</span>
<span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">I2</span><span class="special">,</span> <span class="keyword">bool</span> <span class="identifier">b</span><span class="special">&gt;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">I2</span><span class="special">,</span> <span class="keyword">bool</span> <span class="identifier">b</span><span class="special">&gt;</span>
@ -59,12 +59,12 @@
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">I2</span><span class="special">&gt;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">I2</span><span class="special">&gt;</span>
<span class="keyword">inline</span> <span class="identifier">I2</span> <span class="identifier">copy</span><span class="special">(</span><span class="identifier">I1</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I1</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">I2</span> <span class="identifier">out</span><span class="special">)</span> <span class="keyword">inline</span> <span class="identifier">I2</span> <span class="identifier">copy</span><span class="special">(</span><span class="identifier">I1</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I1</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">I2</span> <span class="identifier">out</span><span class="special">)</span>
<span class="special">{</span> <span class="special">{</span>
<span class="comment">// <span class="comment">//</span>
</span> <span class="comment">// We can copy with memcpy if T has a trivial assignment operator, <span class="comment">// We can copy with memcpy if T has a trivial assignment operator,</span>
</span> <span class="comment">// and if the iterator arguments are actually pointers (this last <span class="comment">// and if the iterator arguments are actually pointers (this last</span>
</span> <span class="comment">// requirement we detect with overload resolution): <span class="comment">// requirement we detect with overload resolution):</span>
</span> <span class="comment">// <span class="comment">//</span>
</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I1</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="identifier">value_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I1</span><span class="special">&gt;::</span><span class="identifier">value_type</span> <span class="identifier">value_type</span><span class="special">;</span>
<span class="keyword">return</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">copy_imp</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;());</span> <span class="keyword">return</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">copy_imp</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">out</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">&lt;</span><span class="identifier">value_type</span><span class="special">&gt;());</span>
<span class="special">}</span> <span class="special">}</span>
</pre> </pre>

View File

@ -24,12 +24,12 @@
Demonstrates a simple algorithm that uses <code class="computeroutput"><span class="identifier">__has_trivial_destruct</span></code> Demonstrates a simple algorithm that uses <code class="computeroutput"><span class="identifier">__has_trivial_destruct</span></code>
to determine whether to destructors need to be called (see <a href="../../../../examples/trivial_destructor_example.cpp" target="_top">trivial_destructor_example.cpp</a>): to determine whether to destructors need to be called (see <a href="../../../../examples/trivial_destructor_example.cpp" target="_top">trivial_destructor_example.cpp</a>):
</p> </p>
<pre class="programlisting"><span class="comment">// <pre class="programlisting"><span class="comment">//</span>
</span><span class="comment">// algorithm destroy_array: <span class="comment">// algorithm destroy_array:</span>
</span><span class="comment">// The reverse of std::unitialized_copy, takes a block of <span class="comment">// The reverse of std::unitialized_copy, takes a block of</span>
</span><span class="comment">// initialized memory and calls destructors on all objects therein. <span class="comment">// initialized memory and calls destructors on all objects therein.</span>
</span><span class="comment">// <span class="comment">//</span>
</span>
<span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
@ -47,8 +47,8 @@
<span class="special">{</span> <span class="special">{</span>
<span class="special">}</span> <span class="special">}</span>
<span class="special">}</span> <span class="comment">// namespace detail <span class="special">}</span> <span class="comment">// namespace detail</span>
</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
<span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">destroy_array</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">)</span> <span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">destroy_array</span><span class="special">(</span><span class="identifier">T</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="identifier">T</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">)</span>
<span class="special">{</span> <span class="special">{</span>

View File

@ -26,11 +26,11 @@
to determine whether to use <code class="computeroutput"><span class="identifier">memset</span></code> to determine whether to use <code class="computeroutput"><span class="identifier">memset</span></code>
to optimise the fill operation (see <a href="../../../../examples/fill_example.cpp" target="_top">fill_example.cpp</a>): to optimise the fill operation (see <a href="../../../../examples/fill_example.cpp" target="_top">fill_example.cpp</a>):
</p> </p>
<pre class="programlisting"><span class="comment">// <pre class="programlisting"><span class="comment">//</span>
</span><span class="comment">// fill <span class="comment">// fill</span>
</span><span class="comment">// same as std::fill, but uses memset where appropriate <span class="comment">// same as std::fill, but uses memset where appropriate</span>
</span><span class="comment">// <span class="comment">//</span>
</span><span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">bool</span> <span class="identifier">b</span><span class="special">&gt;</span> <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">bool</span> <span class="identifier">b</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">b</span><span class="special">&gt;&amp;)</span> <span class="keyword">void</span> <span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">b</span><span class="special">&gt;&amp;)</span>
@ -53,11 +53,11 @@
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
<span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">fill</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">)</span> <span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">fill</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">last</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">val</span><span class="special">)</span>
<span class="special">{</span> <span class="special">{</span>
<span class="comment">// <span class="comment">//</span>
</span> <span class="comment">// We can do an optimised fill if T has a trivial assignment <span class="comment">// We can do an optimised fill if T has a trivial assignment </span>
</span> <span class="comment">// operator and if it's size is one: <span class="comment">// operator and if it's size is one:</span>
</span> <span class="comment">// <span class="comment">//</span>
</span> <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span>
<span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span> <span class="special">&amp;&amp;</span> <span class="special">(</span><span class="keyword">sizeof</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">)&gt;</span> <span class="identifier">truth_type</span><span class="special">;</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/has_trivial_assign.html" title="has_trivial_assign">has_trivial_assign</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span> <span class="special">&amp;&amp;</span> <span class="special">(</span><span class="keyword">sizeof</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">)&gt;</span> <span class="identifier">truth_type</span><span class="special">;</span>
<span class="identifier">detail</span><span class="special">::</span><span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">val</span><span class="special">,</span> <span class="identifier">truth_type</span><span class="special">());</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">do_fill</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">,</span> <span class="identifier">val</span><span class="special">,</span> <span class="identifier">truth_type</span><span class="special">());</span>
<span class="special">}</span> <span class="special">}</span>

View File

@ -29,12 +29,12 @@
the swap to ensure that the algorithm works correctly for both proxying iterators, the swap to ensure that the algorithm works correctly for both proxying iterators,
and even iterators of different types (see <a href="../../../../examples/iter_swap_example.cpp" target="_top">iter_swap_example.cpp</a>): and even iterators of different types (see <a href="../../../../examples/iter_swap_example.cpp" target="_top">iter_swap_example.cpp</a>):
</p> </p>
<pre class="programlisting"><span class="comment">// <pre class="programlisting"><span class="comment">//</span>
</span><span class="comment">// iter_swap: <span class="comment">// iter_swap:</span>
</span><span class="comment">// tests whether iterator is a proxying iterator or not, and <span class="comment">// tests whether iterator is a proxying iterator or not, and</span>
</span><span class="comment">// uses optimal form accordingly: <span class="comment">// uses optimal form accordingly:</span>
</span><span class="comment">// <span class="comment">//</span>
</span><span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">detail</span><span class="special">{</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I</span><span class="special">&gt;</span> <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I</span><span class="special">&gt;</span>
<span class="keyword">static</span> <span class="keyword">void</span> <span class="identifier">do_swap</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">two</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">false_type</a><span class="special">&amp;)</span> <span class="keyword">static</span> <span class="keyword">void</span> <span class="identifier">do_swap</span><span class="special">(</span><span class="identifier">I</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I</span> <span class="identifier">two</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">false_type</a><span class="special">&amp;)</span>
@ -56,11 +56,11 @@
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">I2</span><span class="special">&gt;</span> <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">I1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">I2</span><span class="special">&gt;</span>
<span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">iter_swap</span><span class="special">(</span><span class="identifier">I1</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I2</span> <span class="identifier">two</span><span class="special">)</span> <span class="keyword">inline</span> <span class="keyword">void</span> <span class="identifier">iter_swap</span><span class="special">(</span><span class="identifier">I1</span> <span class="identifier">one</span><span class="special">,</span> <span class="identifier">I2</span> <span class="identifier">two</span><span class="special">)</span>
<span class="special">{</span> <span class="special">{</span>
<span class="comment">// <span class="comment">//</span>
</span> <span class="comment">// See is both arguments are non-proxying iterators, <span class="comment">// See is both arguments are non-proxying iterators, </span>
</span> <span class="comment">// and if both iterator the same type: <span class="comment">// and if both iterator the same type:</span>
</span> <span class="comment">// <span class="comment">//</span>
</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I1</span><span class="special">&gt;::</span><span class="identifier">reference</span> <span class="identifier">r1_t</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I1</span><span class="special">&gt;::</span><span class="identifier">reference</span> <span class="identifier">r1_t</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I2</span><span class="special">&gt;::</span><span class="identifier">reference</span> <span class="identifier">r2_t</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span><span class="special">&lt;</span><span class="identifier">I2</span><span class="special">&gt;::</span><span class="identifier">reference</span> <span class="identifier">r2_t</span><span class="special">;</span>
<span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><a class="link" href="../reference/integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span>

View File

@ -92,7 +92,7 @@
of the following macros: of the following macros:
</p> </p>
<div class="table"> <div class="table">
<a name="id916731"></a><p class="title"><b>Table&#160;1.4.&#160;Macros for Compiler Intrinsics</b></p> <a name="id903635"></a><p class="title"><b>Table&#160;1.4.&#160;Macros for Compiler Intrinsics</b></p>
<div class="table-contents"><table class="table" summary="Macros for Compiler Intrinsics"> <div class="table-contents"><table class="table" summary="Macros for Compiler Intrinsics">
<colgroup> <colgroup>
<col> <col>

View File

@ -49,10 +49,11 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<p> <p>
<a class="indexterm" name="id923544"></a> <a class="indexterm" name="id910332"></a>
<a class="indexterm" name="id910341"></a>
</p> </p>
<div class="table"> <div class="table">
<a name="id923553"></a><p class="title"><b>Table&#160;1.5.&#160;Examples</b></p> <a name="id910351"></a><p class="title"><b>Table&#160;1.5.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -47,10 +47,11 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<p> <p>
<a class="indexterm" name="id924034"></a> <a class="indexterm" name="id910833"></a>
<a class="indexterm" name="id910845"></a>
</p> </p>
<div class="table"> <div class="table">
<a name="id924046"></a><p class="title"><b>Table&#160;1.6.&#160;Examples</b></p> <a name="id910857"></a><p class="title"><b>Table&#160;1.6.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -49,7 +49,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id924577"></a><p class="title"><b>Table&#160;1.7.&#160;Examples</b></p> <a name="id911387"></a><p class="title"><b>Table&#160;1.7.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -46,7 +46,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id925054"></a><p class="title"><b>Table&#160;1.8.&#160;Examples</b></p> <a name="id911865"></a><p class="title"><b>Table&#160;1.8.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -46,10 +46,11 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<p> <p>
<a class="indexterm" name="id925528"></a> <a class="indexterm" name="id912339"></a>
<a class="indexterm" name="id912346"></a>
</p> </p>
<div class="table"> <div class="table">
<a name="id925536"></a><p class="title"><b>Table&#160;1.9.&#160;Examples</b></p> <a name="id912353"></a><p class="title"><b>Table&#160;1.9.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -23,9 +23,10 @@
<span class="keyword">struct</span> <span class="identifier">alignment_of</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span> <span class="special">{};</span> <span class="keyword">struct</span> <span class="identifier">alignment_of</span> <span class="special">:</span> <span class="keyword">public</span> <a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span> <span class="special">{};</span>
</pre> </pre>
<p> <p>
<span class="bold"><strong>Inherits:</strong></span> Class template alignment<span class="underline">of inherits from `</span>_integral_constant&lt;std::size_t, <span class="bold"><strong>Inherits:</strong></span> Class template alignment_of inherits
ALIGNOF(T)&gt;<code class="computeroutput"><span class="special">,</span> <span class="identifier">where</span> from <code class="computeroutput"><a class="link" href="integral_constant.html" title="integral_constant">integral_constant</a><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)&gt;</span></code>,
</code>ALIGNOF(T)` is the alignment of type T. where <code class="computeroutput"><span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span></code> is the
alignment of type T.
</p> </p>
<p> <p>
<span class="emphasis"><em>Note: strictly speaking you should only rely on the value of <code class="computeroutput"><span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span></code> being <span class="emphasis"><em>Note: strictly speaking you should only rely on the value of <code class="computeroutput"><span class="identifier">ALIGNOF</span><span class="special">(</span><span class="identifier">T</span><span class="special">)</span></code> being

View File

@ -41,7 +41,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id926724"></a><p class="title"><b>Table&#160;1.10.&#160;Examples</b></p> <a name="id913582"></a><p class="title"><b>Table&#160;1.10.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -41,7 +41,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id929172"></a><p class="title"><b>Table&#160;1.11.&#160;Examples</b></p> <a name="id916030"></a><p class="title"><b>Table&#160;1.11.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -52,7 +52,7 @@
</p></td></tr> </p></td></tr>
</table></div> </table></div>
<div class="table"> <div class="table">
<a name="id929545"></a><p class="title"><b>Table&#160;1.12.&#160;Function Traits Members</b></p> <a name="id916403"></a><p class="title"><b>Table&#160;1.12.&#160;Function Traits Members</b></p>
<div class="table-contents"><table class="table" summary="Function Traits Members"> <div class="table-contents"><table class="table" summary="Function Traits Members">
<colgroup> <colgroup>
<col> <col>
@ -115,7 +115,7 @@
</table></div> </table></div>
</div> </div>
<br class="table-break"><div class="table"> <br class="table-break"><div class="table">
<a name="id929762"></a><p class="title"><b>Table&#160;1.13.&#160;Examples</b></p> <a name="id916620"></a><p class="title"><b>Table&#160;1.13.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -42,7 +42,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id935539"></a><p class="title"><b>Table&#160;1.14.&#160;Examples</b></p> <a name="id922400"></a><p class="title"><b>Table&#160;1.14.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -55,8 +55,8 @@
<span class="keyword">struct</span> <span class="identifier">B</span> <span class="special">:</span> <span class="identifier">A</span> <span class="special">{};</span> <span class="keyword">struct</span> <span class="identifier">B</span> <span class="special">:</span> <span class="identifier">A</span> <span class="special">{};</span>
<span class="keyword">struct</span> <span class="identifier">C</span> <span class="special">:</span> <span class="identifier">A</span> <span class="special">{};</span> <span class="keyword">struct</span> <span class="identifier">C</span> <span class="special">:</span> <span class="identifier">A</span> <span class="special">{};</span>
<span class="keyword">struct</span> <span class="identifier">D</span> <span class="special">:</span> <span class="identifier">B</span><span class="special">,</span> <span class="identifier">C</span> <span class="special">{};</span> <span class="keyword">struct</span> <span class="identifier">D</span> <span class="special">:</span> <span class="identifier">B</span><span class="special">,</span> <span class="identifier">C</span> <span class="special">{};</span>
<span class="comment">// This produces a compiler error, the conversion is ambiguous: <span class="comment">// This produces a compiler error, the conversion is ambiguous:</span>
</span><span class="keyword">bool</span> <span class="keyword">const</span> <span class="identifier">y</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_convertible</span><span class="special">&lt;</span><span class="identifier">D</span><span class="special">*,</span><span class="identifier">A</span><span class="special">*&gt;::</span><span class="identifier">value</span><span class="special">;</span> <span class="keyword">bool</span> <span class="keyword">const</span> <span class="identifier">y</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_convertible</span><span class="special">&lt;</span><span class="identifier">D</span><span class="special">*,</span><span class="identifier">A</span><span class="special">*&gt;::</span><span class="identifier">value</span><span class="special">;</span>
</pre> </pre>
<p> <p>
<span class="bold"><strong>C++ Standard Reference:</strong></span> 4 and 8.5. <span class="bold"><strong>C++ Standard Reference:</strong></span> 4 and 8.5.

View File

@ -29,10 +29,10 @@
Note that this template does not detect <span class="emphasis"><em>pointers to functions</em></span>, Note that this template does not detect <span class="emphasis"><em>pointers to functions</em></span>,
or <span class="emphasis"><em>references to functions</em></span>, these are detected by <a class="link" href="is_pointer.html" title="is_pointer">is_pointer</a> and <a class="link" href="is_reference.html" title="is_reference">is_reference</a> respectively: or <span class="emphasis"><em>references to functions</em></span>, these are detected by <a class="link" href="is_pointer.html" title="is_pointer">is_pointer</a> and <a class="link" href="is_reference.html" title="is_reference">is_reference</a> respectively:
</p> </p>
<pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">f1</span><span class="special">();</span> <span class="comment">// f1 is of function type. <pre class="programlisting"><span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">f1</span><span class="special">();</span> <span class="comment">// f1 is of function type.</span>
</span><span class="keyword">typedef</span> <span class="keyword">int</span> <span class="special">(</span><span class="identifier">f2</span><span class="special">*)();</span> <span class="comment">// f2 is a pointer to a function. <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="special">(</span><span class="identifier">f2</span><span class="special">*)();</span> <span class="comment">// f2 is a pointer to a function.</span>
</span><span class="keyword">typedef</span> <span class="keyword">int</span> <span class="special">(</span><span class="identifier">f3</span><span class="special">&amp;)();</span> <span class="comment">// f3 is a reference to a function. <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="special">(</span><span class="identifier">f3</span><span class="special">&amp;)();</span> <span class="comment">// f3 is a reference to a function.</span>
</span></pre> </pre>
<p> <p>
<span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2p1 and 8.3.5. <span class="bold"><strong>C++ Standard Reference:</strong></span> 3.9.2p1 and 8.3.5.
</p> </p>

View File

@ -46,10 +46,10 @@
can not be used with function types. can not be used with function types.
</p> </p>
<p> <p>
Without some (as yet unspecified) help from the compiler, is<span class="underline">pod Without some (as yet unspecified) help from the compiler, is_pod will never
will never report that a class or struct is a POD; this is always safe, if report that a class or struct is a POD; this is always safe, if possibly
possibly sub-optimal. Currently (May 2005) only MWCW 9 and Visual C++ 8 have sub-optimal. Currently (May 2005) only MWCW 9 and Visual C++ 8 have the necessary
the necessary compiler-</span>_intrinsics. compiler-<a class="link" href="../intrinsics.html" title="Support for Compiler Intrinsics">intrinsics</a>.
</p> </p>
<p> <p>
<span class="bold"><strong>Header:</strong></span> <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="bold"><strong>Header:</strong></span> <code class="computeroutput"> <span class="preprocessor">#include</span>

View File

@ -47,7 +47,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id954666"></a><p class="title"><b>Table&#160;1.15.&#160;Examples</b></p> <a name="id941662"></a><p class="title"><b>Table&#160;1.15.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -47,7 +47,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id955148"></a><p class="title"><b>Table&#160;1.16.&#160;Examples</b></p> <a name="id942144"></a><p class="title"><b>Table&#160;1.16.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -44,7 +44,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id955673"></a><p class="title"><b>Table&#160;1.17.&#160;Examples</b></p> <a name="id942669"></a><p class="title"><b>Table&#160;1.17.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -47,7 +47,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id957794"></a><p class="title"><b>Table&#160;1.18.&#160;Examples</b></p> <a name="id944791"></a><p class="title"><b>Table&#160;1.18.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -46,7 +46,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id958339"></a><p class="title"><b>Table&#160;1.19.&#160;Examples</b></p> <a name="id945336"></a><p class="title"><b>Table&#160;1.19.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -46,7 +46,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id958872"></a><p class="title"><b>Table&#160;1.20.&#160;Examples</b></p> <a name="id945868"></a><p class="title"><b>Table&#160;1.20.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -47,7 +47,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id959949"></a><p class="title"><b>Table&#160;1.21.&#160;Examples</b></p> <a name="id946945"></a><p class="title"><b>Table&#160;1.21.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -46,7 +46,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id960505"></a><p class="title"><b>Table&#160;1.22.&#160;Examples</b></p> <a name="id947501"></a><p class="title"><b>Table&#160;1.22.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -46,7 +46,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id961017"></a><p class="title"><b>Table&#160;1.23.&#160;Examples</b></p> <a name="id948013"></a><p class="title"><b>Table&#160;1.23.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -46,7 +46,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p> </p>
<div class="table"> <div class="table">
<a name="id961473"></a><p class="title"><b>Table&#160;1.24.&#160;Examples</b></p> <a name="id948469"></a><p class="title"><b>Table&#160;1.24.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples"> <div class="table-contents"><table class="table" summary="Examples">
<colgroup> <colgroup>
<col> <col>

View File

@ -23,7 +23,7 @@
Marcus, Itay Maman, John Maddock, Alexander Nasonov, Thorsten Ottosen, Robert Marcus, Itay Maman, John Maddock, Alexander Nasonov, Thorsten Ottosen, Robert
Ramey and Jeremy Siek</p></div> Ramey and Jeremy Siek</p></div>
<div><div class="legalnotice"> <div><div class="legalnotice">
<a name="id905720"></a><p> <a name="id892613"></a><p>
Distributed under the Boost Software License, Version 1.0. (See accompanying Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p> </p>

View File

@ -17,8 +17,8 @@
</div> </div>
<div class="section" lang="en"> <div class="section" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both"> <div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="id962044"></a>Class Index</h2></div></div></div> <a name="id949109"></a>Class Index</h2></div></div></div>
<p><a class="link" href="s10.html#idx_id_0">A</a> <a class="link" href="s10.html#idx_id_2">D</a> <a class="link" href="s10.html#idx_id_3">E</a> <a class="link" href="s10.html#idx_id_4">F</a> <a class="link" href="s10.html#idx_id_5">H</a> <a class="link" href="s10.html#idx_id_6">I</a> <a class="link" href="s10.html#idx_id_7">M</a> <a class="link" href="s10.html#idx_id_9">P</a> <a class="link" href="s10.html#idx_id_10">R</a> <a class="link" href="s10.html#idx_id_12">T</a></p> <p><a class="link" href="s10.html#idx_id_0">A</a> <a class="link" href="s10.html#idx_id_2">D</a> <a class="link" href="s10.html#idx_id_3">E</a> <a class="link" href="s10.html#idx_id_4">F</a> <a class="link" href="s10.html#idx_id_5">H</a> <a class="link" href="s10.html#idx_id_6">I</a> <a class="link" href="s10.html#idx_id_7">L</a> <a class="link" href="s10.html#idx_id_8">M</a> <a class="link" href="s10.html#idx_id_10">P</a> <a class="link" href="s10.html#idx_id_11">R</a> <a class="link" href="s10.html#idx_id_13">T</a></p>
<div class="variablelist"><dl> <div class="variablelist"><dl>
<dt> <dt>
<a name="idx_id_0"></a><span class="term">A</span> <a name="idx_id_0"></a><span class="term">A</span>
@ -153,18 +153,37 @@
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/is_volatile.html" title="is_volatile"><span class="index-entry-level-0">is_volatile</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/is_volatile.html" title="is_volatile"><span class="index-entry-level-0">is_volatile</span></a></p></li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_7"></a><span class="term">M</span> <a name="idx_id_7"></a><span class="term">L</span>
</dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">Level One</span></p>
<div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_volatile.html" title="add_volatile"><span class="index-entry-level-1">add_volatile</span></a></p></li>
<li style="list-style-type: none">
<p><span class="index-entry-level-1">Level Two</span></p>
<div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_const.html" title="add_const"><span class="index-entry-level-2">add_const</span></a></p></li>
<li style="list-style-type: none">
<p><span class="index-entry-level-2">Level Three</span></p>
<div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_cv.html" title="add_cv"><span class="index-entry-level-3">add_cv</span></a></p></li></ul></div>
</li>
</ul></div>
</li>
</ul></div>
</li></ul></div></dd>
<dt>
<a name="idx_id_8"></a><span class="term">M</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_signed.html" title="make_signed"><span class="index-entry-level-0">make_signed</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_signed.html" title="make_signed"><span class="index-entry-level-0">make_signed</span></a></p></li>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_unsigned.html" title="make_unsigned"><span class="index-entry-level-0">make_unsigned</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_unsigned.html" title="make_unsigned"><span class="index-entry-level-0">make_unsigned</span></a></p></li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_9"></a><span class="term">P</span> <a name="idx_id_10"></a><span class="term">P</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/promote.html" title="promote"><span class="index-entry-level-0">promote</span></a></p></li></ul></div></dd> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/promote.html" title="promote"><span class="index-entry-level-0">promote</span></a></p></li></ul></div></dd>
<dt> <dt>
<a name="idx_id_10"></a><span class="term">R</span> <a name="idx_id_11"></a><span class="term">R</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/rank.html" title="rank"><span class="index-entry-level-0">rank</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/rank.html" title="rank"><span class="index-entry-level-0">rank</span></a></p></li>
@ -183,7 +202,7 @@
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/remove_volatile.html" title="remove_volatile"><span class="index-entry-level-0">remove_volatile</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/remove_volatile.html" title="remove_volatile"><span class="index-entry-level-0">remove_volatile</span></a></p></li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_12"></a><span class="term">T</span> <a name="idx_id_13"></a><span class="term">T</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/type_with_alignment.html" title="type_with_alignment"><span class="index-entry-level-0">type_with_alignment</span></a></p></li></ul></div></dd> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/type_with_alignment.html" title="type_with_alignment"><span class="index-entry-level-0">type_with_alignment</span></a></p></li></ul></div></dd>
</dl></div> </dl></div>

View File

@ -17,25 +17,25 @@
</div> </div>
<div class="section" lang="en"> <div class="section" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both"> <div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="id963058"></a>Typedef Index</h2></div></div></div> <a name="id950119"></a>Typedef Index</h2></div></div></div>
<p><a class="link" href="s11.html#idx_id_18">F</a> <a class="link" href="s11.html#idx_id_24">R</a> <a class="link" href="s11.html#idx_id_26">T</a></p> <p><a class="link" href="s11.html#idx_id_19">F</a> <a class="link" href="s11.html#idx_id_26">R</a> <a class="link" href="s11.html#idx_id_28">T</a></p>
<div class="variablelist"><dl> <div class="variablelist"><dl>
<dt> <dt>
<a name="idx_id_18"></a><span class="term">F</span> <a name="idx_id_19"></a><span class="term">F</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">false_type</span></p> <p><span class="index-entry-level-0">false_type</span></p>
<div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/integral_constant.html" title="integral_constant"><span class="index-entry-level-1">integral_constant</span></a></p></li></ul></div> <div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/integral_constant.html" title="integral_constant"><span class="index-entry-level-1">integral_constant</span></a></p></li></ul></div>
</li></ul></div></dd> </li></ul></div></dd>
<dt> <dt>
<a name="idx_id_24"></a><span class="term">R</span> <a name="idx_id_26"></a><span class="term">R</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">result_type</span></p> <p><span class="index-entry-level-0">result_type</span></p>
<div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/function_traits.html" title="function_traits"><span class="index-entry-level-1">function_traits</span></a></p></li></ul></div> <div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/function_traits.html" title="function_traits"><span class="index-entry-level-1">function_traits</span></a></p></li></ul></div>
</li></ul></div></dd> </li></ul></div></dd>
<dt> <dt>
<a name="idx_id_26"></a><span class="term">T</span> <a name="idx_id_28"></a><span class="term">T</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">true_type</span></p> <p><span class="index-entry-level-0">true_type</span></p>

View File

@ -17,11 +17,11 @@
</div> </div>
<div class="section" lang="en"> <div class="section" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both"> <div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="id963170"></a>Macro Index</h2></div></div></div> <a name="id950229"></a>Macro Index</h2></div></div></div>
<p><a class="link" href="s12.html#idx_id_29">B</a></p> <p><a class="link" href="s12.html#idx_id_31">B</a></p>
<div class="variablelist"><dl> <div class="variablelist"><dl>
<dt> <dt>
<a name="idx_id_29"></a><span class="term">B</span> <a name="idx_id_31"></a><span class="term">B</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"> <li style="list-style-type: none">

View File

@ -16,11 +16,11 @@
</div> </div>
<div class="section" lang="en"> <div class="section" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both"> <div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="id963559"></a>Index</h2></div></div></div> <a name="id950615"></a>Index</h2></div></div></div>
<p><a class="link" href="s13.html#idx_id_42">A</a> <a class="link" href="s13.html#idx_id_43">B</a> <a class="link" href="s13.html#idx_id_44">D</a> <a class="link" href="s13.html#idx_id_45">E</a> <a class="link" href="s13.html#idx_id_46">F</a> <a class="link" href="s13.html#idx_id_47">H</a> <a class="link" href="s13.html#idx_id_48">I</a> <a class="link" href="s13.html#idx_id_49">M</a> <a class="link" href="s13.html#idx_id_50">O</a> <a class="link" href="s13.html#idx_id_51">P</a> <a class="link" href="s13.html#idx_id_52">R</a> <a class="link" href="s13.html#idx_id_53">S</a> <a class="link" href="s13.html#idx_id_54">T</a> <a class="link" href="s13.html#idx_id_55">U</a></p> <p><a class="link" href="s13.html#idx_id_45">A</a> <a class="link" href="s13.html#idx_id_46">B</a> <a class="link" href="s13.html#idx_id_47">D</a> <a class="link" href="s13.html#idx_id_48">E</a> <a class="link" href="s13.html#idx_id_49">F</a> <a class="link" href="s13.html#idx_id_50">H</a> <a class="link" href="s13.html#idx_id_51">I</a> <a class="link" href="s13.html#idx_id_52">L</a> <a class="link" href="s13.html#idx_id_53">M</a> <a class="link" href="s13.html#idx_id_54">O</a> <a class="link" href="s13.html#idx_id_55">P</a> <a class="link" href="s13.html#idx_id_56">R</a> <a class="link" href="s13.html#idx_id_57">S</a> <a class="link" href="s13.html#idx_id_58">T</a> <a class="link" href="s13.html#idx_id_59">U</a></p>
<div class="variablelist"><dl> <div class="variablelist"><dl>
<dt> <dt>
<a name="idx_id_42"></a><span class="term">A</span> <a name="idx_id_45"></a><span class="term">A</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_const.html" title="add_const"><span class="index-entry-level-0">add_const</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_const.html" title="add_const"><span class="index-entry-level-0">add_const</span></a></p></li>
@ -38,7 +38,7 @@
</li> </li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_43"></a><span class="term">B</span> <a name="idx_id_46"></a><span class="term">B</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"> <li style="list-style-type: none">
@ -127,11 +127,11 @@
</li> </li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_44"></a><span class="term">D</span> <a name="idx_id_47"></a><span class="term">D</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/decay.html" title="decay"><span class="index-entry-level-0">decay</span></a></p></li></ul></div></dd> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/decay.html" title="decay"><span class="index-entry-level-0">decay</span></a></p></li></ul></div></dd>
<dt> <dt>
<a name="idx_id_45"></a><span class="term">E</span> <a name="idx_id_48"></a><span class="term">E</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">extent</span></p> <p><span class="index-entry-level-0">extent</span></p>
@ -141,7 +141,7 @@
</ul></div> </ul></div>
</li></ul></div></dd> </li></ul></div></dd>
<dt> <dt>
<a name="idx_id_46"></a><span class="term">F</span> <a name="idx_id_49"></a><span class="term">F</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"> <li style="list-style-type: none">
@ -158,7 +158,7 @@
</li> </li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_47"></a><span class="term">H</span> <a name="idx_id_50"></a><span class="term">H</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/has_nothrow_assign.html" title="has_nothrow_assign"><span class="index-entry-level-0">has_nothrow_assign</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/has_nothrow_assign.html" title="has_nothrow_assign"><span class="index-entry-level-0">has_nothrow_assign</span></a></p></li>
@ -211,7 +211,7 @@
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/has_virtual_destructor.html" title="has_virtual_destructor"><span class="index-entry-level-0">has_virtual_destructor</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/has_virtual_destructor.html" title="has_virtual_destructor"><span class="index-entry-level-0">has_virtual_destructor</span></a></p></li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_48"></a><span class="term">I</span> <a name="idx_id_51"></a><span class="term">I</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"> <li style="list-style-type: none">
@ -299,14 +299,33 @@
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/is_volatile.html" title="is_volatile"><span class="index-entry-level-0">is_volatile</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/is_volatile.html" title="is_volatile"><span class="index-entry-level-0">is_volatile</span></a></p></li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_49"></a><span class="term">M</span> <a name="idx_id_52"></a><span class="term">L</span>
</dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">Level One</span></p>
<div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_volatile.html" title="add_volatile"><span class="index-entry-level-1">add_volatile</span></a></p></li>
<li style="list-style-type: none">
<p><span class="index-entry-level-1">Level Two</span></p>
<div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_const.html" title="add_const"><span class="index-entry-level-2">add_const</span></a></p></li>
<li style="list-style-type: none">
<p><span class="index-entry-level-2">Level Three</span></p>
<div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/add_cv.html" title="add_cv"><span class="index-entry-level-3">add_cv</span></a></p></li></ul></div>
</li>
</ul></div>
</li>
</ul></div>
</li></ul></div></dd>
<dt>
<a name="idx_id_53"></a><span class="term">M</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_signed.html" title="make_signed"><span class="index-entry-level-0">make_signed</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_signed.html" title="make_signed"><span class="index-entry-level-0">make_signed</span></a></p></li>
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_unsigned.html" title="make_unsigned"><span class="index-entry-level-0">make_unsigned</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_unsigned.html" title="make_unsigned"><span class="index-entry-level-0">make_unsigned</span></a></p></li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_50"></a><span class="term">O</span> <a name="idx_id_54"></a><span class="term">O</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">one</span></p> <p><span class="index-entry-level-0">one</span></p>
@ -325,11 +344,11 @@
</ul></div> </ul></div>
</li></ul></div></dd> </li></ul></div></dd>
<dt> <dt>
<a name="idx_id_51"></a><span class="term">P</span> <a name="idx_id_55"></a><span class="term">P</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/promote.html" title="promote"><span class="index-entry-level-0">promote</span></a></p></li></ul></div></dd> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/promote.html" title="promote"><span class="index-entry-level-0">promote</span></a></p></li></ul></div></dd>
<dt> <dt>
<a name="idx_id_52"></a><span class="term">R</span> <a name="idx_id_56"></a><span class="term">R</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"> <li style="list-style-type: none">
@ -358,7 +377,7 @@
</li> </li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_53"></a><span class="term">S</span> <a name="idx_id_57"></a><span class="term">S</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">Support for Compiler Intrinsics</span></p> <p><span class="index-entry-level-0">Support for Compiler Intrinsics</span></p>
@ -384,7 +403,7 @@
</ul></div> </ul></div>
</li></ul></div></dd> </li></ul></div></dd>
<dt> <dt>
<a name="idx_id_54"></a><span class="term">T</span> <a name="idx_id_58"></a><span class="term">T</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact> <dd><div class="index"><ul type="none" compact>
<li style="list-style-type: none"> <li style="list-style-type: none">
@ -398,7 +417,7 @@
<li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/type_with_alignment.html" title="type_with_alignment"><span class="index-entry-level-0">type_with_alignment</span></a></p></li> <li style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/type_with_alignment.html" title="type_with_alignment"><span class="index-entry-level-0">type_with_alignment</span></a></p></li>
</ul></div></dd> </ul></div></dd>
<dt> <dt>
<a name="idx_id_55"></a><span class="term">U</span> <a name="idx_id_59"></a><span class="term">U</span>
</dt> </dt>
<dd><div class="index"><ul type="none" compact><li style="list-style-type: none"> <dd><div class="index"><ul type="none" compact><li style="list-style-type: none">
<p><span class="index-entry-level-0">User Defined Specializations</span></p> <p><span class="index-entry-level-0">User Defined Specializations</span></p>

View File

@ -23,6 +23,8 @@
[last-revision $Date$] [last-revision $Date$]
] ]
[include ../../../include/auto_index_helpers.qbk]
[def __boost_root ../../../../] [def __boost_root ../../../../]
[def __tof '''<replaceable><link linkend="boost_typetraits.reference.integral_constant">true_type</link>-or-<link linkend="boost_typetraits.reference.integral_constant">false_type</link></replaceable>'''] [def __tof '''<replaceable><link linkend="boost_typetraits.reference.integral_constant">true_type</link>-or-<link linkend="boost_typetraits.reference.integral_constant">false_type</link></replaceable>''']
@ -243,19 +245,10 @@ See __has_trivial_constructor.
[include credits.qbk] [include credits.qbk]
''' [named_index class_name Class Index]
<index type="class_name"> [named_index typedef_name Typedef Index]
<title>Class Index</title> [named_index macro_name Macro Index]
</index> [index]
<index type="typedef_name">
<title>Typedef Index</title>
</index>
<index type="macro_name">
<title>Macro Index</title>
</index>
<index/>
'''

View File

@ -0,0 +1,19 @@
[template index[]
'''<index/>'''
]
[template named_index[type title]
'''<index type="'''[type]'''"><title>'''[title]'''</title></index>'''
]
[template AutoIndex [Args] '''<?BoostAutoIndex ''' [Args]'''?>''']
[template indexterm1 [primary] '''<indexterm><primary>'''[primary]'''</primary></indexterm>''']
[template indexterm2 [primary secondary] '''<indexterm><primary>'''[primary]'''</primary><secondary>'''[secondary]'''</secondary></indexterm>''']
[template indexterm3 [primary secondary tertiary] '''<indexterm><primary>'''[primary]'''</primary><secondary>'''[secondary]'''</secondary><tertiary>'''[tertiary]'''</tertiary></indexterm>''']
[template typed_indexterm1 [type primary] '''<indexterm type="'''[type]'''"><primary>'''[primary]'''</primary></indexterm>''']
[template typed_indexterm2 [type primary secondary] '''<indexterm type="'''[type]'''"><primary>'''[primary]'''</primary><secondary>'''[secondary]'''</secondary></indexterm>''']
[template typed_indexterm3 [type primary secondary tertiary] '''<indexterm type="'''[type]'''"><primary>'''[primary]'''</primary><secondary>'''[secondary]'''</secondary><tertiary>'''[tertiary]'''</tertiary></indexterm>''']