Imported Upstream version 1.72.0
[platform/upstream/boost.git] / libs / beast / doc / html / beast / ref / boost__beast__bind_front_handler.html
1 <html>
2 <head>
3 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
4 <title>bind_front_handler</title>
5 <link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
6 <meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7 <link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.Beast">
8 <link rel="up" href="../ref.html" title="This Page Intentionally Left Blank 2/2">
9 <link rel="prev" href="boost__beast__beast_close_socket.html" title="beast_close_socket">
10 <link rel="next" href="boost__beast__bind_handler.html" title="bind_handler">
11 </head>
12 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13 <table cellpadding="2" width="100%"><tr>
14 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
15 <td align="center"><a href="../../../../../../index.html">Home</a></td>
16 <td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
17 <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
18 <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
19 <td align="center"><a href="../../../../../../more/index.htm">More</a></td>
20 </tr></table>
21 <hr>
22 <div class="spirit-nav">
23 <a accesskey="p" href="boost__beast__beast_close_socket.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="boost__beast__bind_handler.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
24 </div>
25 <div class="section">
26 <div class="titlepage"><div><div><h4 class="title">
27 <a name="beast.ref.boost__beast__bind_front_handler"></a><a class="link" href="boost__beast__bind_front_handler.html" title="bind_front_handler">bind_front_handler</a>
28 </h4></div></div></div>
29 <p>
30         <a class="indexterm" name="idm45873514118544"></a>
31 Bind parameters to a completion handler, creating a new
32         handler.
33       </p>
34 <h5>
35 <a name="beast.ref.boost__beast__bind_front_handler.h0"></a>
36         <span class="phrase"><a name="beast.ref.boost__beast__bind_front_handler.synopsis"></a></span><a class="link" href="boost__beast__bind_front_handler.html#beast.ref.boost__beast__bind_front_handler.synopsis">Synopsis</a>
37       </h5>
38 <p>
39         Defined in header <code class="literal">&lt;<a href="../../../../../../boost/beast/core/bind_handler.hpp" target="_top">boost/beast/core/bind_handler.hpp</a>&gt;</code>
40       </p>
41 <pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
42     <span class="keyword">class</span> <a href="../../../../../../doc/html/boost_asio/reference/Handler.html" target="_top"><span class="emphasis"><em>Handler</em></span></a><span class="special">,</span>
43     <span class="keyword">class</span><span class="special">...</span> <span class="identifier">Args</span><span class="special">&gt;</span>
44 <span class="emphasis"><em>implementation-defined</em></span>
45 <span class="identifier">bind_front_handler</span><span class="special">(</span>
46     <span class="identifier">Handler</span><span class="special">&amp;&amp;</span> <span class="identifier">handler</span><span class="special">,</span>
47     <span class="identifier">Args</span><span class="special">&amp;&amp;...</span> <span class="identifier">args</span><span class="special">);</span>
48 </pre>
49 <h5>
50 <a name="beast.ref.boost__beast__bind_front_handler.h1"></a>
51         <span class="phrase"><a name="beast.ref.boost__beast__bind_front_handler.description"></a></span><a class="link" href="boost__beast__bind_front_handler.html#beast.ref.boost__beast__bind_front_handler.description">Description</a>
52       </h5>
53 <p>
54         This function creates a new handler which, when invoked, calls the original
55         handler with the list of bound arguments. Any parameters passed in the invocation
56         will be forwarded in the parameter list after the bound arguments. The passed
57         handler and arguments are forwarded into the returned handler, whose associated
58         allocator and associated executor will will be the same as those of the original
59         handler.
60       </p>
61 <h5>
62 <a name="beast.ref.boost__beast__bind_front_handler.h2"></a>
63         <span class="phrase"><a name="beast.ref.boost__beast__bind_front_handler.example"></a></span><a class="link" href="boost__beast__bind_front_handler.html#beast.ref.boost__beast__bind_front_handler.example">Example</a>
64       </h5>
65 <p>
66         This function posts the invocation of the specified completion handler with
67         bound arguments:
68       </p>
69 <pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">AsyncReadStream</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">ReadHandler</span><span class="special">&gt;</span>
70 <span class="keyword">void</span>
71 <span class="identifier">signal_eof</span> <span class="special">(</span><span class="identifier">AsyncReadStream</span><span class="special">&amp;</span> <span class="identifier">stream</span><span class="special">,</span> <span class="identifier">ReadHandler</span><span class="special">&amp;&amp;</span> <span class="identifier">handler</span><span class="special">)</span>
72 <span class="special">{</span>
73     <span class="identifier">net</span><span class="special">::</span><span class="identifier">post</span><span class="special">(</span>
74         <span class="identifier">stream</span><span class="special">.</span><span class="identifier">get_executor</span><span class="special">(),</span>
75         <span class="identifier">bind_front_handler</span> <span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">forward</span><span class="special">&lt;</span><span class="identifier">ReadHandler</span><span class="special">&gt;</span> <span class="special">(</span><span class="identifier">handler</span><span class="special">),</span>
76             <span class="identifier">net</span><span class="special">::</span><span class="identifier">error</span><span class="special">::</span><span class="identifier">eof</span><span class="special">,</span> <span class="number">0</span><span class="special">));</span>
77 <span class="special">}</span>
78 </pre>
79 <h5>
80 <a name="beast.ref.boost__beast__bind_front_handler.h3"></a>
81         <span class="phrase"><a name="beast.ref.boost__beast__bind_front_handler.parameters"></a></span><a class="link" href="boost__beast__bind_front_handler.html#beast.ref.boost__beast__bind_front_handler.parameters">Parameters</a>
82       </h5>
83 <div class="informaltable"><table class="table">
84 <colgroup>
85 <col>
86 <col>
87 </colgroup>
88 <thead><tr>
89 <th>
90                 <p>
91                   Name
92                 </p>
93               </th>
94 <th>
95                 <p>
96                   Description
97                 </p>
98               </th>
99 </tr></thead>
100 <tbody>
101 <tr>
102 <td>
103                 <p>
104                   <code class="computeroutput"><span class="identifier">handler</span></code>
105                 </p>
106               </td>
107 <td>
108                 <p>
109                   The handler to wrap. The implementation takes ownership of the
110                   handler by performing a decay-copy.
111                 </p>
112               </td>
113 </tr>
114 <tr>
115 <td>
116                 <p>
117                   <code class="computeroutput"><span class="identifier">args</span></code>
118                 </p>
119               </td>
120 <td>
121                 <p>
122                   A list of arguments to bind to the handler. The arguments are forwarded
123                   into the returned object.
124                 </p>
125               </td>
126 </tr>
127 </tbody>
128 </table></div>
129 <p>
130         Convenience header <code class="literal">&lt;<a href="../../../../../../boost/beast/core.hpp" target="_top">boost/beast/core.hpp</a>&gt;</code>
131       </p>
132 </div>
133 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
134 <td align="left"></td>
135 <td align="right"><div class="copyright-footer">Copyright &#169; 2016-2019 Vinnie
136       Falco<p>
137         Distributed under the Boost Software License, Version 1.0. (See accompanying
138         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>)
139       </p>
140 </div></td>
141 </tr></table>
142 <hr>
143 <div class="spirit-nav">
144 <a accesskey="p" href="boost__beast__beast_close_socket.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="boost__beast__bind_handler.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
145 </div>
146 </body>
147 </html>