1[/ 2 / Copyright (c) 2003-2021 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:AcceptableProtocol Acceptable protocol requirements] 9 10A type `X` meets the `AcceptableProtocol` requirements if it satisfies the 11requirements of [link boost_asio.reference.Protocol `Protocol`] as well as the 12additional requirements listed below. 13 14[table AcceptableProtocol requirements 15 [[expression] [return type] [assertion/note[br]pre/post-conditions]] 16 [ 17 [`X::socket`] 18 [A type that satisfies the requirements of `Destructible` (C++Std 19 \[destructible\]) and `MoveConstructible` (C++Std \[moveconstructible\]), 20 and that is publicly and unambiguously derived from `basic_socket<X>`.] 21 [] 22 ] 23] 24 25[endsect] 26