• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. Sequences/Views//joint_view
2
3joint_view
4==========
5
6Synopsis
7--------
8
9.. parsed-literal::
10
11    template<
12          typename Sequence1
13        , typename Sequence2
14        >
15    struct joint_view
16    {
17        // |unspecified|
18        // |...|
19    };
20
21
22
23Description
24-----------
25
26A view into the sequence of elements formed by concatenating ``Sequence1``
27and ``Sequence2`` elements.
28
29
30Header
31------
32
33.. parsed-literal::
34
35    #include <boost/mpl/joint_view.hpp>
36
37
38Model of
39--------
40
41* |Forward Sequence|
42
43
44Parameters
45----------
46
47+-----------------------+---------------------------+-----------------------------------+
48| Parameter             | Requirement               | Description                       |
49+=======================+===========================+===================================+
50| ``Sequence1``,        | |Forward Sequence|        | Sequences to create a view on.    |
51| ``Sequence2``         |                           |                                   |
52+-----------------------+---------------------------+-----------------------------------+
53
54Expression semantics
55--------------------
56
57|Semantics disclaimer...| |Forward Sequence|.
58
59In the following table, ``v`` is an instance of ``joint_view``, ``s1`` and ``s2`` are arbitrary
60|Forward Sequence|\ s.
61
62+-------------------------------+-----------------------------------------------------------+
63| Expression                    | Semantics                                                 |
64+===============================+===========================================================+
65| .. parsed-literal::           | A lazy |Forward Sequence| of all the elements in the      |
66|                               | ranges |begin/end<s1>|, |begin/end<s2>|.                  |
67|    joint_view<s1,s2>          |                                                           |
68|    joint_view<s1,s2>::type    |                                                           |
69+-------------------------------+-----------------------------------------------------------+
70| ``size<v>::type``             | The size of ``v``;                                        |
71|                               | ``size<v>::value == size<s1>::value + size<s2>::value``;  |
72|                               | linear complexity; see |Forward Sequence|.                |
73+-------------------------------+-----------------------------------------------------------+
74
75Example
76-------
77
78.. parsed-literal::
79
80    typedef joint_view<
81          range_c<int,0,10>
82        , range_c<int,10,15>
83        > numbers;
84
85    BOOST_MPL_ASSERT(( equal< numbers, range_c<int,0,15> > ));
86
87
88See also
89--------
90
91|Sequences|, |Views|, |filter_view|, |transform_view|, |zip_view|, |iterator_range|
92
93
94.. copyright:: Copyright �  2001-2009 Aleksey Gurtovoy and David Abrahams
95   Distributed under the Boost Software License, Version 1.0. (See accompanying
96   file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
97