Merge pull request #56 from Flast/doc-update

Update docs
This commit is contained in:
Joel de Guzman
2015-02-22 04:39:31 +08:00
20 changed files with 58 additions and 37 deletions

View File

@ -89,6 +89,35 @@ __std_pair_doc__, __tr1_tuple_pair__
[endsect] [endsect]
[section std::tuple]
This module provides adapters for `std::tuple`. Including the module header
makes `std::tuple` a fully conforming __random_access_sequence__.
[important To be fully conforming, compiler should support C++11 Variadic Templates.]
[heading Header]
#include <boost/fusion/adapted/std_tuple.hpp>
#include <boost/fusion/include/std_tuple.hpp>
[heading Model of]
* __random_access_sequence__
[heading Example]
std::tuple<int, std::string, float> p(123, "Hola!!!", 456.f);
std::cout << __at_c__<0>(p) << std::endl;
std::cout << __at_c__<1>(p) << std::endl;
std::cout << p << std::endl;
[heading See also]
__std_tuple_doc__
[endsect]
[section mpl sequence] [section mpl sequence]
This module provides adapters for __mpl__ sequences. Including the module This module provides adapters for __mpl__ sequences. Including the module
@ -168,8 +197,8 @@ header makes `boost::tuple` a fully conforming __forward_sequence__.
[heading Example] [heading Example]
boost::tuple<int,std::string> example_tuple(101, "hello"); boost::tuple<int,std::string> example_tuple(101, "hello");
std::cout << *boost::fusion::begin(example_tuple) << '\n'; std::cout << *__begin__(example_tuple) << '\n';
std::cout << *boost::fusion::next(boost::fusion::begin(example_tuple)) << '\n'; std::cout << *__next__(__begin__(example_tuple)) << '\n';
[heading See also] [heading See also]

View File

@ -191,7 +191,7 @@ defined in __forward_sequence__.
[[`__at__<N>(l)`] [The Nth element from the beginning of the sequence; see __at__.]] [[`__at__<N>(l)`] [The Nth element from the beginning of the sequence; see __at__.]]
] ]
[blurb __note__ `__at__<N>(l)` is provided for convenience and compatibility [note `__at__<N>(l)` is provided for convenience and compatibility
with the original __tuple__ library, despite `cons` being a with the original __tuple__ library, despite `cons` being a
__forward_sequence__ only (`at` is supposed to be a __forward_sequence__ only (`at` is supposed to be a
__random_access_sequence__ requirement). The runtime complexity of __at__ is __random_access_sequence__ requirement). The runtime complexity of __at__ is
@ -276,7 +276,7 @@ defined in __forward_sequence__.
[[`__at__<N>(l)`] [The Nth element from the beginning of the sequence; see __at__.]] [[`__at__<N>(l)`] [The Nth element from the beginning of the sequence; see __at__.]]
] ]
[blurb __note__ `__at__<n>(l)` is provided for convenience and compatibility [note `__at__<n>(l)` is provided for convenience and compatibility
with the original __tuple__ library, despite `list` being a with the original __tuple__ library, despite `list` being a
__forward_sequence__ only (__at__ is supposed to be a __forward_sequence__ only (__at__ is supposed to be a
__random_access_sequence__ requirement). The runtime complexity of __at__ is __random_access_sequence__ requirement). The runtime complexity of __at__ is
@ -363,7 +363,7 @@ defined in __bidirectional_sequence__.
[[`__at__<N>(d)`] [The Nth element from the beginning of the sequence; see __at__.]] [[`__at__<N>(d)`] [The Nth element from the beginning of the sequence; see __at__.]]
] ]
[blurb __note__ `__at__<N>(d)` is provided for convenience, despite [note `__at__<N>(d)` is provided for convenience, despite
`deque` being a __bidirectional_sequence__ only (`at` is supposed to be `deque` being a __bidirectional_sequence__ only (`at` is supposed to be
a __random_access_sequence__ requirement). The runtime complexity of a __random_access_sequence__ requirement). The runtime complexity of
__at__ is constant (see __recursive_inline__). `deque` element access __at__ is constant (see __recursive_inline__). `deque` element access
@ -406,7 +406,7 @@ the same properties as the __deque__.
[[`T`] [Element type] [ ]] [[`T`] [Element type] [ ]]
] ]
[blurb __note__ `Deque` can be a __deque__, a __front_extended_deque__ or a [note `Deque` can be a __deque__, a __front_extended_deque__ or a
__back_extended_deque__] __back_extended_deque__]
[heading Model of] [heading Model of]
@ -430,7 +430,7 @@ not defined in __bidirectional_sequence__.
[[`__at__<N>(d)`] [The Nth element from the beginning of the sequence; see __at__.]] [[`__at__<N>(d)`] [The Nth element from the beginning of the sequence; see __at__.]]
] ]
[blurb __note__ See __deque__ for further details.] [note See __deque__ for further details.]
[heading Example] [heading Example]
@ -467,7 +467,7 @@ the same properties as the __deque__.
[[`T`] [Element type] [ ]] [[`T`] [Element type] [ ]]
] ]
[blurb __note__ `Deque` can be a __deque__, a __back_extended_deque__ or a [note `Deque` can be a __deque__, a __back_extended_deque__ or a
__back_extended_deque__] __back_extended_deque__]
[heading Model of] [heading Model of]
@ -491,7 +491,7 @@ not defined in __bidirectional_sequence__.
[[`__at__<N>(d)`] [The Nth element from the beginning of the sequence; see __at__.]] [[`__at__<N>(d)`] [The Nth element from the beginning of the sequence; see __at__.]]
] ]
[blurb __note__ See __deque__ for further details.] [note See __deque__ for further details.]
[heading Example] [heading Example]
@ -730,7 +730,7 @@ before including any Fusion header to change the default. Example:
[heading See also] [heading See also]
__note_boost_ref__ __note_ref_wrappers__
[endsect] [endsect]
@ -778,7 +778,7 @@ __result_of_make_cons__`<Car>::type`
[heading See also] [heading See also]
__note_boost_ref__ __note_ref_wrappers__
[endsect] [endsect]
@ -828,7 +828,7 @@ default. Example:
[heading See also] [heading See also]
__note_boost_ref__ __note_ref_wrappers__
[endsect] [endsect]
@ -880,7 +880,7 @@ Fusion header to change the default. Example:
[heading See also] [heading See also]
__note_boost_ref__ __note_ref_wrappers__
[endsect] [endsect]
@ -932,7 +932,7 @@ default. Example:
[heading See also] [heading See also]
__note_boost_ref__ __note_ref_wrappers__
[endsect] [endsect]
@ -990,7 +990,7 @@ default. Example:
[heading See also] [heading See also]
__note_boost_ref__, __fusion_pair__ __note_ref_wrappers__, __fusion_pair__
[endsect] [endsect]

View File

@ -931,11 +931,11 @@ reference. Const qualification is preserved and propagated appropriately
the target function object is const - or, in case the target function object the target function object is const - or, in case the target function object
is held by value, the adapter is const). is held by value, the adapter is const).
[blurb __note__ For Microsoft Visual C++ 7.1 (Visual Studio 2003) the detection [note For Microsoft Visual C++ 7.1 (Visual Studio 2003) the detection
of the Function Object's const qualification easily causes an internal error. of the Function Object's const qualification easily causes an internal error.
Therefore the adapter is always treated as if it was const. ] Therefore the adapter is always treated as if it was const. ]
[blurb __tip__ If the type sequence passed to this template contains [tip If the type sequence passed to this template contains
non-reference elements, the element is copied only once - the call operator's non-reference elements, the element is copied only once - the call operator's
signature is optimized automatically to avoid by-value parameters.] signature is optimized automatically to avoid by-value parameters.]

View File

@ -20,11 +20,6 @@
] ]
] ]
[def __note__ [$images/note.png]]
[def __alert__ [$images/alert.png]]
[def __tip__ [$images/tip.png]]
[def __caution__ [$images/caution.png]]
[def __spirit__ [@http://spirit.sourceforge.net Spirit]] [def __spirit__ [@http://spirit.sourceforge.net Spirit]]
[def __phoenix__ [@http://www.boost.org/libs/phoenix/index.html Phoenix]] [def __phoenix__ [@http://www.boost.org/libs/phoenix/index.html Phoenix]]
[def __mpl__ [@http://www.boost.org/libs/mpl/index.html MPL]] [def __mpl__ [@http://www.boost.org/libs/mpl/index.html MPL]]
@ -55,6 +50,7 @@
[def __boost_func_factory__ [@http://www.boost.org/libs/functional/factory/doc/html/index.html Boost.Functional/Factory]] [def __boost_func_factory__ [@http://www.boost.org/libs/functional/factory/doc/html/index.html Boost.Functional/Factory]]
[def __boost_func_hash__ [@http://www.boost.org/doc/html/hash.html Boost.Functional/Hash]] [def __boost_func_hash__ [@http://www.boost.org/doc/html/hash.html Boost.Functional/Hash]]
[def __std_pair_doc__ [@http://www.sgi.com/tech/stl/pair.html `std::pair`]] [def __std_pair_doc__ [@http://www.sgi.com/tech/stl/pair.html `std::pair`]]
[def __std_tuple_doc__ [@http://en.cppreference.com/w/cpp/utility/tuple `std::tuple`]]
[def __std_plus_doc__ [@http://www.sgi.com/tech/stl/plus.html `std::plus`]] [def __std_plus_doc__ [@http://www.sgi.com/tech/stl/plus.html `std::plus`]]
[def __std_minus_doc__ [@http://www.sgi.com/tech/stl/minus.html `std::minus`]] [def __std_minus_doc__ [@http://www.sgi.com/tech/stl/minus.html `std::minus`]]
@ -331,7 +327,7 @@
[def __tag_dispatching__ [link fusion.notes.tag_dispatching /tag dispatching/]] [def __tag_dispatching__ [link fusion.notes.tag_dispatching /tag dispatching/]]
[def __element_conversion__ [link fusion.notes.element_conversion /element conversion/]] [def __element_conversion__ [link fusion.notes.element_conversion /element conversion/]]
[def __see_element_conversion__ [link fusion.notes.element_conversion /see element conversion/]] [def __see_element_conversion__ [link fusion.notes.element_conversion /see element conversion/]]
[def __note_boost_ref__ [link fusion.notes.boost__ref `boost::ref`]] [def __note_ref_wrappers__ [link fusion.notes.reference_wrappers `Reference Wrappers`]]
[def __quick_start__ [link fusion.quick_start Quick Start]] [def __quick_start__ [link fusion.quick_start Quick Start]]
[def __organization__ [link fusion.organization Organization]] [def __organization__ [link fusion.organization Organization]]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 603 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 722 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 658 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 334 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 867 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 640 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 370 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -167,6 +167,7 @@
<dd><dl> <dd><dl>
<dt><span class="section"><a href="fusion/adapted/array.html">Array</a></span></dt> <dt><span class="section"><a href="fusion/adapted/array.html">Array</a></span></dt>
<dt><span class="section"><a href="fusion/adapted/std__pair.html">std::pair</a></span></dt> <dt><span class="section"><a href="fusion/adapted/std__pair.html">std::pair</a></span></dt>
<dt><span class="section"><a href="fusion/adapted/std__tuple.html">std::tuple</a></span></dt>
<dt><span class="section"><a href="fusion/adapted/mpl_sequence.html">mpl sequence</a></span></dt> <dt><span class="section"><a href="fusion/adapted/mpl_sequence.html">mpl sequence</a></span></dt>
<dt><span class="section"><a href="fusion/adapted/boost__array.html">boost::array</a></span></dt> <dt><span class="section"><a href="fusion/adapted/boost__array.html">boost::array</a></span></dt>
<dt><span class="section"><a href="fusion/adapted/boost__tuple.html">boost::tuple</a></span></dt> <dt><span class="section"><a href="fusion/adapted/boost__tuple.html">boost::tuple</a></span></dt>

View File

@ -100,7 +100,7 @@ Array arguments are deduced to reference to const types. For example
[footnote Note that the type of a string literal is an array of const [footnote Note that the type of a string literal is an array of const
characters, not `const char*`. To get __make_list__ to create a __list__ characters, not `const char*`. To get __make_list__ to create a __list__
with an element of a non-const array type one must use the `ref` wrapper with an element of a non-const array type one must use the `ref` wrapper
(see __note_boost_ref__).]: (see __note_ref_wrappers__).]:
__make_list__("Donald", "Daisy") __make_list__("Donald", "Daisy")

View File

@ -49,16 +49,11 @@ and traversal routines. It was an instant /AHA!/ moment.
Some icons are used to mark certain topics indicative of their relevance. Some icons are used to mark certain topics indicative of their relevance.
These icons precede some text to indicate: These icons precede some text to indicate:
[table Icons [note Information provided is auxiliary but will give the reader a deeper
[[Icon] [Name] [Meaning]] insight into a specific topic. May be skipped.]
[[__note__] [Note] [Information provided is auxiliary but will [important Information provided is of utmost importance.]
give the reader a deeper insight into a specific [caution A mild warning.]
topic. May be skipped.]] [tip A potentially useful and helpful piece of information.]
[[__alert__] [Alert] [Information provided is of utmost importance.]]
[[__caution__] [Caution] [A mild warning.]]
[[__tip__] [Tip] [A potentially useful and helpful piece of
information.]]
]
This documentation is automatically generated by Boost QuickBook documentation This documentation is automatically generated by Boost QuickBook documentation
tool. QuickBook can be found in the __boost_tools__. tool. QuickBook can be found in the __boost_tools__.

View File

@ -255,7 +255,7 @@ any Random Access Sequence the following must be met:
[[`__result_of_value_at_c__<S, N>::type`] [Amortized constant time]] [[`__result_of_value_at_c__<S, N>::type`] [Amortized constant time]]
] ]
[blurb __note__ `__result_of_at__<S, M>` returns the actual type returned by [note `__result_of_at__<S, M>` returns the actual type returned by
`__at__<M>(s)`. In most cases, this is a reference. Hence, there is no way to `__at__<M>(s)`. In most cases, this is a reference. Hence, there is no way to
know the exact element type using `__result_of_at__<S, M>`.The element at `M` know the exact element type using `__result_of_at__<S, M>`.The element at `M`
may actually be a reference to begin with. For this purpose, you can use may actually be a reference to begin with. For this purpose, you can use
@ -330,7 +330,7 @@ For any Associative Sequence the following expressions must be valid:
[[`__result_of_value_at_key__<S, K>::type`] [Amortized constant time]] [[`__result_of_value_at_key__<S, K>::type`] [Amortized constant time]]
] ]
[blurb __note__ `__result_of_at_key__<S, K>` returns the actual type returned [note `__result_of_at_key__<S, K>` returns the actual type returned
by `__at_key__<K>(s)`. In most cases, this is a reference. Hence, there is no by `__at_key__<K>(s)`. In most cases, this is a reference. Hence, there is no
way to know the exact element type using `__result_of_at_key__<S, K>`.The way to know the exact element type using `__result_of_at_key__<S, K>`.The
element at `K` may actually be a reference to begin with. For this purpose, element at `K` may actually be a reference to begin with. For this purpose,

View File

@ -254,7 +254,7 @@ Metafunction to apply __element_conversion__ to the full argument type.
It removes references to `const`, references to array types are kept, even It removes references to `const`, references to array types are kept, even
if the array is `const`. Reference wrappers are removed (see if the array is `const`. Reference wrappers are removed (see
__note_boost_ref__)[footnote Since C++11, the standard reference wrappers __note_ref_wrappers__)[footnote Since C++11, the standard reference wrappers
are also removed.]. are also removed.].
[heading Header] [heading Header]