summaryrefslogtreecommitdiff
path: root/doc/html/boost_asio/reference/MutableBufferSequence.html
blob: c21868b613109b43e682cf50d0a5f171f3c83b72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Mutable buffer sequence requirements</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="MoveAcceptHandler.html" title="Move accept handler requirements">
<link rel="next" href="ProtoAllocator.html" title="Proto-allocator requirements">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="MoveAcceptHandler.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="ProtoAllocator.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="boost_asio.reference.MutableBufferSequence"></a><a class="link" href="MutableBufferSequence.html" title="Mutable buffer sequence requirements">Mutable buffer
      sequence requirements</a>
</h3></div></div></div>
<p>
        A <span class="emphasis"><em>mutable buffer sequence</em></span> represents a set of memory
        regions that may be used to receive the output of an operation, such as the
        <code class="computeroutput">receive</code> operation of a socket.
      </p>
<p>
        A type <code class="computeroutput">X</code> meets the <code class="computeroutput">MutableBufferSequence</code> requirements
        if it satisfies the requirements of <code class="computeroutput">Destructible</code> (C++Std [destructible])
        and <code class="computeroutput">CopyConstructible</code> (C++Std [copyconstructible]), as well
        as the additional requirements listed below.
      </p>
<p>
        In the table below, <code class="computeroutput">x</code> denotes a (possibly const) value of type
        <code class="computeroutput">X</code>, and <code class="computeroutput">u</code> denotes an identifier.
      </p>
<div class="table">
<a name="boost_asio.reference.MutableBufferSequence.t0"></a><p class="title"><b>Table&#160;21.&#160;MutableBufferSequence requirements</b></p>
<div class="table-contents"><table class="table" summary="MutableBufferSequence requirements">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                <p>
                  expression
                </p>
              </th>
<th>
                <p>
                  return type
                </p>
              </th>
<th>
                <p>
                  assertion/note<br> pre/post-condition
                </p>
              </th>
</tr></thead>
<tbody>
<tr>
<td>
                <p>
                  <code class="computeroutput">boost::asio::buffer_sequence_begin(x)</code><br> <code class="computeroutput">boost::asio::buffer_sequence_end(x)</code>
                </p>
              </td>
<td>
                <p>
                  An iterator type meeting the requirements for bidirectional iterators
                  (C++Std [bidirectional.iterators]) whose value type is convertible
                  to <code class="computeroutput">mutable_buffer</code>.
                </p>
              </td>
<td>
              </td>
</tr>
<tr>
<td>
                <p>
</p>
<pre class="programlisting">X u(x);
</pre>
<p>
                </p>
              </td>
<td>
              </td>
<td>
                <p>
                  post:<br>
</p>
<pre class="programlisting">equal(
  boost::asio::buffer_sequence_begin(x),
  boost::asio::buffer_sequence_end(x),
  boost::asio::buffer_sequence_begin(u),
  boost::asio::buffer_sequence_end(u),
  [](const mutable_buffer&amp; b1,
     const mutable_buffer&amp; b2)
   {
     return b1.data() == b2.data()
         &amp;&amp; b1.size() == b2.size();
   })
</pre>
<p>
                </p>
              </td>
</tr>
</tbody>
</table></div>
</div>
<br class="table-break">
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003-2018 Christopher M. Kohlhoff<p>
        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>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="MoveAcceptHandler.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="ProtoAllocator.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>