]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | [/ |
2 | / Copyright (c) 2003-2016 Christopher M. Kohlhoff (chris at kohlhoff dot com) | |
3 | / | |
4 | / Distributed under the Boost Software License, Version 1.0. (See accompanying | |
5 | / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
6 | /] | |
7 | ||
8 | [section:Protocol Protocol requirements] | |
9 | ||
10 | A protocol must meet the requirements of `CopyConstructible` types (C++ Std, | |
11 | 20.1.3), and the requirements of `Assignable` types (C++ Std, 23.1). | |
12 | ||
13 | In the table below, `X` denotes a protocol class, and `a` denotes a value of | |
14 | `X`. | |
15 | ||
16 | [table Protocol requirements | |
17 | [[expression] [return type] [assertion/note\npre/post-conditions]] | |
18 | [ | |
19 | [`X::endpoint`] | |
20 | [type meeting [link boost_asio.reference.Endpoint endpoint] requirements] | |
21 | [] | |
22 | ] | |
23 | [ | |
24 | [`a.family()`] | |
25 | [`int`] | |
26 | [ | |
27 | Returns a value suitable for passing as the /domain/ argument to | |
28 | __POSIX__ __socket__ (or equivalent). | |
29 | ] | |
30 | ] | |
31 | [ | |
32 | [`a.type()`] | |
33 | [`int`] | |
34 | [ | |
35 | Returns a value suitable for passing as the /type/ argument to __POSIX__ | |
36 | __socket__ (or equivalent). | |
37 | ] | |
38 | ] | |
39 | [ | |
40 | [`a.protocol()`] | |
41 | [`int`] | |
42 | [ | |
43 | Returns a value suitable for passing as the /protocol/ argument to | |
44 | __POSIX__ __socket__ (or equivalent). | |
45 | ] | |
46 | ] | |
47 | ] | |
48 | ||
49 | [endsect] |