]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/mpl/doc/src/refmanual/list_c.rst
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / mpl / doc / src / refmanual / list_c.rst
1 .. Sequences/Classes//list_c |80
2
3 list_c
4 ======
5
6 Description
7 -----------
8
9 ``list_c`` is an |Integral Sequence Wrapper| for |list|. As such, it shares
10 all |list| characteristics and requirements, and differs only in the way the
11 original sequence content is specified.
12
13 Header
14 ------
15
16 +-------------------+-------------------------------------------------------+
17 | Sequence form | Header |
18 +===================+=======================================================+
19 | Variadic | ``#include <boost/mpl/list_c.hpp>`` |
20 +-------------------+-------------------------------------------------------+
21 | Numbered | ``#include <boost/mpl/list/list``\ *n*\ ``_c.hpp>`` |
22 +-------------------+-------------------------------------------------------+
23
24
25 Model of
26 --------
27
28 * |Integral Sequence Wrapper|
29 * |Variadic Sequence|
30 * |Forward Sequence|
31 * |Extensible Sequence|
32 * |Front Extensible Sequence|
33
34
35 Expression semantics
36 --------------------
37
38 |Semantics disclaimer...| |list|.
39
40 .. workaround substitution bug (should be replace:: list\ *n*\ _c<T,\ |c1...cn|>)
41 .. |listn_c<T,...>| replace:: list\ *n*\ _c<T,\ *c*\ :sub:`1`,\ *c*\ :sub:`2`,... \ *c*\ :sub:`n`\ >
42
43 +---------------------------------------+-----------------------------------------------+
44 | Expression | Semantics |
45 +=======================================+===============================================+
46 | .. parsed-literal:: | A |list| of integral constant wrappers |
47 | | ``integral_c<T,``\ |c1|\ ``>``, |
48 | list_c<T,\ |c1...cn|> | ``integral_c<T,``\ |c2|\ ``>``, ... |
49 | |listn_c<T,...>| | ``integral_c<T,``\ |cn|\ ``>``; |
50 | | see |Integral Sequence Wrapper|. |
51 +---------------------------------------+-----------------------------------------------+
52 | .. parsed-literal:: | Identical to ``list``\ *n*\ ``<`` |
53 | | ``integral_c<T,``\ |c1|\ ``>``, |
54 | list_c<T,\ |c1...cn|>::type | ``integral_c<T,``\ |c2|\ ``>``, ... |
55 | |listn_c<T,...>|::type | ``integral_c<T,``\ |cn|\ ``>`` ``>``; |
56 | | see |Integral Sequence Wrapper|. |
57 +---------------------------------------+-----------------------------------------------+
58 | .. parsed-literal:: | Identical to ``T``; see |
59 | | |Integral Sequence Wrapper|. |
60 | list_c<T,\ |c1...cn|>::value_type | |
61 | |listn_c<T,...>|::value_type | |
62 +---------------------------------------+-----------------------------------------------+
63
64
65 Example
66 -------
67
68 .. parsed-literal::
69
70 typedef list_c<int,1,2,3,5,7,12,19,31> fibonacci;
71 typedef push_front<fibonacci,int_<1> >::type fibonacci2;
72
73 BOOST_MPL_ASSERT_RELATION( front<fibonacci2>::type::value, ==, 1 );
74
75
76 See also
77 --------
78
79 |Sequences|, |Integral Sequence Wrapper|, |list|, |integral_c|, |vector_c|, |set_c|, |range_c|
80
81
82 .. copyright:: Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams
83 Distributed under the Boost Software License, Version 1.0. (See accompanying
84 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)