]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/mpl/doc/src/refmanual/set_c.rst
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / mpl / doc / src / refmanual / set_c.rst
CommitLineData
7c673cae
FG
1.. Sequences/Classes//set_c |90
2
3set_c
4=====
5
6Description
7-----------
8
9``set_c`` is an |Integral Sequence Wrapper| for |set|. As such, it shares
10all |set| characteristics and requirements, and differs only in the way the
11original sequence content is specified.
12
13Header
14------
15
16+-------------------+-------------------------------------------------------+
17| Sequence form | Header |
18+===================+=======================================================+
19| Variadic | ``#include <boost/mpl/set_c.hpp>`` |
20+-------------------+-------------------------------------------------------+
21| Numbered | ``#include <boost/mpl/set/set``\ *n*\ ``_c.hpp>`` |
22+-------------------+-------------------------------------------------------+
23
24
25Model of
26--------
27
28* |Variadic Sequence|
29* |Associative Sequence|
30* |Extensible Associative Sequence|
31
32
33Expression semantics
34--------------------
35
36|Semantics disclaimer...| |set|.
37
38.. workaround substitution bug (should be replace:: set\ *n*\ _c<T,\ |c1...cn|>)
39.. |setn_c<T,...>| replace:: set\ *n*\ _c<T,\ *c*\ :sub:`1`,\ *c*\ :sub:`2`,... \ *c*\ :sub:`n`\ >
40
41+---------------------------------------+-----------------------------------------------+
42| Expression | Semantics |
43+=======================================+===============================================+
44| .. parsed-literal:: | A |set| of integral constant wrappers |
45| | ``integral_c<T,``\ |c1|\ ``>``, |
46| set_c<T,\ |c1...cn|> | ``integral_c<T,``\ |c2|\ ``>``, ... |
47| |setn_c<T,...>| | ``integral_c<T,``\ |cn|\ ``>``; |
48| | see |Integral Sequence Wrapper|. |
49+---------------------------------------+-----------------------------------------------+
50| .. parsed-literal:: | Identical to ``set``\ *n*\ ``<`` |
51| | ``integral_c<T,``\ |c1|\ ``>``, |
52| set_c<T,\ |c1...cn|>::type | ``integral_c<T,``\ |c2|\ ``>``, ... |
53| |setn_c<T,...>|::type | ``integral_c<T,``\ |cn|\ ``>`` ``>``; |
54| | see |Integral Sequence Wrapper|. |
55+---------------------------------------+-----------------------------------------------+
56| .. parsed-literal:: | Identical to ``T``; see |
57| | |Integral Sequence Wrapper|. |
58| set_c<T,\ |c1...cn|>::value_type | |
59| |setn_c<T,...>|::value_type | |
60+---------------------------------------+-----------------------------------------------+
61
62
63Example
64-------
65
66.. parsed-literal::
67
68 typedef set_c< int,1,3,5,7,9 > odds;
69
70 BOOST_MPL_ASSERT_RELATION( size<odds>::value, ==, 5 );
71 BOOST_MPL_ASSERT_NOT(( empty<odds> ));
72
73 BOOST_MPL_ASSERT(( has_key< odds, integral_c<int,5> > ));
74 BOOST_MPL_ASSERT_NOT(( has_key< odds, integral_c<int,4> > ));
75 BOOST_MPL_ASSERT_NOT(( has_key< odds, integral_c<int,15> > ));
76
77
78See also
79--------
80
81|Sequences|, |Integral Sequence Wrapper|, |set|, |integral_c|, |vector_c|, |list_c|, |range_c|
82
83
84