Regenerate documentation.
diff --git a/asio/src/doc/reference.qbk b/asio/src/doc/reference.qbk index 6ee7a54..a5d2058 100644 --- a/asio/src/doc/reference.qbk +++ b/asio/src/doc/reference.qbk
@@ -2956,7 +2956,9 @@ Construct a basic_datagram_socket, opening it and binding it to the given local endpoint. - Construct a basic_datagram_socket on an existing native socket. ] + Construct a basic_datagram_socket on an existing native socket. + + Move-construct a basic_datagram_socket from another. ] ] [ @@ -3041,6 +3043,11 @@ ] [ + [[link asio.reference.basic_datagram_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_datagram_socket from another. ] + ] + + [ [[link asio.reference.basic_datagram_socket.receive [*receive]]] [Receive some data on a connected socket. ] ] @@ -3077,6 +3084,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_datagram_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_datagram_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -3114,12 +3137,12 @@ [ [[link asio.reference.basic_datagram_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_datagram_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -4010,7 +4033,15 @@ `` [''''»''' [link asio.reference.basic_datagram_socket.basic_datagram_socket.overload4 more...]]`` -[section:overload1 basic_datagram_socket::basic_datagram_socket (1 of 4 overloads)] +Move-construct a [link asio.reference.basic_datagram_socket `basic_datagram_socket`] from another. + + + ``[link asio.reference.basic_datagram_socket.basic_datagram_socket.overload5 basic_datagram_socket]``( + basic_datagram_socket && other); + `` [''''»''' [link asio.reference.basic_datagram_socket.basic_datagram_socket.overload5 more...]]`` + + +[section:overload1 basic_datagram_socket::basic_datagram_socket (1 of 5 overloads)] Construct a [link asio.reference.basic_datagram_socket `basic_datagram_socket`] without opening it. @@ -4039,7 +4070,7 @@ -[section:overload2 basic_datagram_socket::basic_datagram_socket (2 of 4 overloads)] +[section:overload2 basic_datagram_socket::basic_datagram_socket (2 of 5 overloads)] Construct and open a [link asio.reference.basic_datagram_socket `basic_datagram_socket`]. @@ -4081,7 +4112,7 @@ -[section:overload3 basic_datagram_socket::basic_datagram_socket (3 of 4 overloads)] +[section:overload3 basic_datagram_socket::basic_datagram_socket (3 of 5 overloads)] Construct a [link asio.reference.basic_datagram_socket `basic_datagram_socket`], opening it and binding it to the given local endpoint. @@ -4123,7 +4154,7 @@ -[section:overload4 basic_datagram_socket::basic_datagram_socket (4 of 4 overloads)] +[section:overload4 basic_datagram_socket::basic_datagram_socket (4 of 5 overloads)] Construct a [link asio.reference.basic_datagram_socket `basic_datagram_socket`] on an existing native socket. @@ -4167,6 +4198,45 @@ [endsect] + +[section:overload5 basic_datagram_socket::basic_datagram_socket (5 of 5 overloads)] + + +Move-construct a [link asio.reference.basic_datagram_socket `basic_datagram_socket`] from another. + + + basic_datagram_socket( + basic_datagram_socket && other); + + +This constructor moves a datagram socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_datagram_socket `basic_datagram_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:bind basic_datagram_socket::bind] @@ -4541,7 +4611,7 @@ [variablelist -[[asio::system_error][Thrown on failure.]] +[[asio::system_error][Thrown on failure. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -4578,7 +4648,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any.]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -4924,6 +4994,54 @@ [endsect] +[section:get_implementation basic_datagram_socket::get_implementation] + +[indexterm2 get_implementation..basic_datagram_socket] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_datagram_socket.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_datagram_socket.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_datagram_socket.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_datagram_socket.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_datagram_socket::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_datagram_socket::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_datagram_socket::get_io_service] @@ -5083,6 +5201,54 @@ [endsect] +[section:get_service basic_datagram_socket::get_service] + +[indexterm2 get_service..basic_datagram_socket] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_datagram_socket.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_datagram_socket.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_datagram_socket.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_datagram_socket.get_service.overload2 more...]]`` + + +[section:overload1 basic_datagram_socket::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_datagram_socket::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_datagram_socket::implementation] @@ -5090,7 +5256,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_datagram_socket] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -5775,7 +5941,9 @@ Construct a basic_socket, opening it and binding it to the given local endpoint. - Construct a basic_socket on an existing native socket. ] + Construct a basic_socket on an existing native socket. + + Move-construct a basic_socket from another. ] ] [ @@ -5860,6 +6028,11 @@ ] [ + [[link asio.reference.basic_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_socket from another. ] + ] + + [ [[link asio.reference.basic_socket.remote_endpoint [*remote_endpoint]]] [Get the remote endpoint of the socket. ] ] @@ -5881,6 +6054,16 @@ [[Name][Description]] [ + [[link asio.reference.basic_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket._basic_socket [*~basic_socket]]] [Protected destructor to prevent deletion through this type. ] ] @@ -5924,12 +6107,12 @@ [ [[link asio.reference.basic_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -6796,6 +6979,45 @@ [endsect] +[section:operator_eq_ basic_datagram_socket::operator=] + +[indexterm2 operator=..basic_datagram_socket] +Move-assign a [link asio.reference.basic_datagram_socket `basic_datagram_socket`] from another. + + + basic_datagram_socket & operator=( + basic_datagram_socket && other); + + +This assignment operator moves a datagram socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_datagram_socket `basic_datagram_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:protocol_type basic_datagram_socket::protocol_type] [indexterm2 protocol_type..basic_datagram_socket] @@ -7972,13 +8194,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_datagram_socket] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -8413,18 +8642,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_deadline_timer.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_deadline_timer.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.basic_deadline_timer.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_deadline_timer.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -9220,6 +9465,54 @@ [endsect] +[section:get_implementation basic_deadline_timer::get_implementation] + +[indexterm2 get_implementation..basic_deadline_timer] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_deadline_timer.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_deadline_timer.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_deadline_timer.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_deadline_timer.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_deadline_timer::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_deadline_timer::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_deadline_timer::get_io_service] @@ -9246,6 +9539,54 @@ [endsect] +[section:get_service basic_deadline_timer::get_service] + +[indexterm2 get_service..basic_deadline_timer] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_deadline_timer.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_deadline_timer.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_deadline_timer.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_deadline_timer.get_service.overload2 more...]]`` + + +[section:overload1 basic_deadline_timer::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_deadline_timer::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_deadline_timer::implementation] @@ -9253,7 +9594,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_deadline_timer] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -9294,13 +9635,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_deadline_timer] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -9453,8 +9801,7 @@ template< typename ``[link asio.reference.IoObjectService IoObjectService]``> - class basic_io_object : - noncopyable + class basic_io_object [heading Types] @@ -9494,7 +9841,24 @@ [ [[link asio.reference.basic_io_object.basic_io_object [*basic_io_object]]] - [Construct a basic_io_object. ] + [Construct a basic_io_object. + + Move-construct a basic_io_object. ] + ] + + [ + [[link asio.reference.basic_io_object.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_io_object.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ + [[link asio.reference.basic_io_object.operator_eq_ [*operator=]]] + [Move-assign a basic_io_object. ] ] [ @@ -9510,36 +9874,61 @@ [ [[link asio.reference.basic_io_object.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_io_object.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] + +[heading Remarks] + +All I/O objects are non-copyable. However, when using C++0x, certain I/O objects do support move construction and move assignment. + + + [heading Requirements] [*Header: ][^asio/basic_io_object.hpp] [*Convenience header: ][^asio.hpp] - [section:basic_io_object basic_io_object::basic_io_object] [indexterm2 basic_io_object..basic_io_object] Construct a [link asio.reference.basic_io_object `basic_io_object`]. + explicit ``[link asio.reference.basic_io_object.basic_io_object.overload1 basic_io_object]``( + asio::io_service & io_service); + `` [''''»''' [link asio.reference.basic_io_object.basic_io_object.overload1 more...]]`` + + +Move-construct a [link asio.reference.basic_io_object `basic_io_object`]. + + + ``[link asio.reference.basic_io_object.basic_io_object.overload2 basic_io_object]``( + basic_io_object && other); + `` [''''»''' [link asio.reference.basic_io_object.basic_io_object.overload2 more...]]`` + + +[section:overload1 basic_io_object::basic_io_object (1 of 2 overloads)] + + +Construct a [link asio.reference.basic_io_object `basic_io_object`]. + + basic_io_object( asio::io_service & io_service); Performs: - service.construct(implementation); + get_service().construct(get_implementation()); @@ -9549,6 +9938,80 @@ +[section:overload2 basic_io_object::basic_io_object (2 of 2 overloads)] + + +Move-construct a [link asio.reference.basic_io_object `basic_io_object`]. + + + basic_io_object( + basic_io_object && other); + + +Performs: + + get_service().move_construct( + get_implementation(), other.get_implementation()); + + + + + +[heading Remarks] + +Available only for services that support movability, + + + + +[endsect] + + +[endsect] + +[section:get_implementation basic_io_object::get_implementation] + +[indexterm2 get_implementation..basic_io_object] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_io_object.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_io_object.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_io_object.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_io_object.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_io_object::get_implementation (1 of 2 overloads)] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_io_object::get_implementation (2 of 2 overloads)] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + + [section:get_io_service basic_io_object::get_io_service] [indexterm2 get_io_service..basic_io_object] @@ -9571,11 +10034,53 @@ [endsect] +[section:get_service basic_io_object::get_service] + +[indexterm2 get_service..basic_io_object] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_io_object.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_io_object.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_io_object.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_io_object.get_service.overload2 more...]]`` + + +[section:overload1 basic_io_object::get_service (1 of 2 overloads)] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_io_object::get_service (2 of 2 overloads)] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_io_object::implementation] [indexterm2 implementation..basic_io_object] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -9607,16 +10112,53 @@ +[section:operator_eq_ basic_io_object::operator=] + +[indexterm2 operator=..basic_io_object] +Move-assign a [link asio.reference.basic_io_object `basic_io_object`]. + + + basic_io_object & operator=( + basic_io_object && other); + + +Performs: + + get_service().move_assign(get_implementation(), + other.get_service(), other.get_implementation()); + + + + + +[heading Remarks] + +Available only for services that support movability, + + + + +[endsect] + + + [section:service basic_io_object::service] [indexterm2 service..basic_io_object] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -9653,7 +10195,7 @@ Performs: - service.destroy(implementation); + get_service().destroy(get_implementation()); @@ -9890,7 +10432,9 @@ Construct a basic_raw_socket, opening it and binding it to the given local endpoint. - Construct a basic_raw_socket on an existing native socket. ] + Construct a basic_raw_socket on an existing native socket. + + Move-construct a basic_raw_socket from another. ] ] [ @@ -9975,6 +10519,11 @@ ] [ + [[link asio.reference.basic_raw_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_raw_socket from another. ] + ] + + [ [[link asio.reference.basic_raw_socket.receive [*receive]]] [Receive some data on a connected socket. ] ] @@ -10011,6 +10560,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_raw_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_raw_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -10048,12 +10613,12 @@ [ [[link asio.reference.basic_raw_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_raw_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -10944,7 +11509,15 @@ `` [''''»''' [link asio.reference.basic_raw_socket.basic_raw_socket.overload4 more...]]`` -[section:overload1 basic_raw_socket::basic_raw_socket (1 of 4 overloads)] +Move-construct a [link asio.reference.basic_raw_socket `basic_raw_socket`] from another. + + + ``[link asio.reference.basic_raw_socket.basic_raw_socket.overload5 basic_raw_socket]``( + basic_raw_socket && other); + `` [''''»''' [link asio.reference.basic_raw_socket.basic_raw_socket.overload5 more...]]`` + + +[section:overload1 basic_raw_socket::basic_raw_socket (1 of 5 overloads)] Construct a [link asio.reference.basic_raw_socket `basic_raw_socket`] without opening it. @@ -10973,7 +11546,7 @@ -[section:overload2 basic_raw_socket::basic_raw_socket (2 of 4 overloads)] +[section:overload2 basic_raw_socket::basic_raw_socket (2 of 5 overloads)] Construct and open a [link asio.reference.basic_raw_socket `basic_raw_socket`]. @@ -11015,7 +11588,7 @@ -[section:overload3 basic_raw_socket::basic_raw_socket (3 of 4 overloads)] +[section:overload3 basic_raw_socket::basic_raw_socket (3 of 5 overloads)] Construct a [link asio.reference.basic_raw_socket `basic_raw_socket`], opening it and binding it to the given local endpoint. @@ -11057,7 +11630,7 @@ -[section:overload4 basic_raw_socket::basic_raw_socket (4 of 4 overloads)] +[section:overload4 basic_raw_socket::basic_raw_socket (4 of 5 overloads)] Construct a [link asio.reference.basic_raw_socket `basic_raw_socket`] on an existing native socket. @@ -11101,6 +11674,45 @@ [endsect] + +[section:overload5 basic_raw_socket::basic_raw_socket (5 of 5 overloads)] + + +Move-construct a [link asio.reference.basic_raw_socket `basic_raw_socket`] from another. + + + basic_raw_socket( + basic_raw_socket && other); + + +This constructor moves a raw socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_raw_socket `basic_raw_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:bind basic_raw_socket::bind] @@ -11475,7 +12087,7 @@ [variablelist -[[asio::system_error][Thrown on failure.]] +[[asio::system_error][Thrown on failure. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -11512,7 +12124,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any.]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -11858,6 +12470,54 @@ [endsect] +[section:get_implementation basic_raw_socket::get_implementation] + +[indexterm2 get_implementation..basic_raw_socket] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_raw_socket.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_raw_socket.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_raw_socket.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_raw_socket.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_raw_socket::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_raw_socket::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_raw_socket::get_io_service] @@ -12017,6 +12677,54 @@ [endsect] +[section:get_service basic_raw_socket::get_service] + +[indexterm2 get_service..basic_raw_socket] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_raw_socket.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_raw_socket.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_raw_socket.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_raw_socket.get_service.overload2 more...]]`` + + +[section:overload1 basic_raw_socket::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_raw_socket::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_raw_socket::implementation] @@ -12024,7 +12732,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_raw_socket] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -12709,7 +13417,9 @@ Construct a basic_socket, opening it and binding it to the given local endpoint. - Construct a basic_socket on an existing native socket. ] + Construct a basic_socket on an existing native socket. + + Move-construct a basic_socket from another. ] ] [ @@ -12794,6 +13504,11 @@ ] [ + [[link asio.reference.basic_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_socket from another. ] + ] + + [ [[link asio.reference.basic_socket.remote_endpoint [*remote_endpoint]]] [Get the remote endpoint of the socket. ] ] @@ -12815,6 +13530,16 @@ [[Name][Description]] [ + [[link asio.reference.basic_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket._basic_socket [*~basic_socket]]] [Protected destructor to prevent deletion through this type. ] ] @@ -12858,12 +13583,12 @@ [ [[link asio.reference.basic_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -13730,6 +14455,45 @@ [endsect] +[section:operator_eq_ basic_raw_socket::operator=] + +[indexterm2 operator=..basic_raw_socket] +Move-assign a [link asio.reference.basic_raw_socket `basic_raw_socket`] from another. + + + basic_raw_socket & operator=( + basic_raw_socket && other); + + +This assignment operator moves a raw socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_raw_socket `basic_raw_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:protocol_type basic_raw_socket::protocol_type] [indexterm2 protocol_type..basic_raw_socket] @@ -14906,13 +15670,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_raw_socket] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -15453,7 +16224,9 @@ Construct a basic_seq_packet_socket, opening it and binding it to the given local endpoint. - Construct a basic_seq_packet_socket on an existing native socket. ] + Construct a basic_seq_packet_socket on an existing native socket. + + Move-construct a basic_seq_packet_socket from another. ] ] [ @@ -15538,6 +16311,11 @@ ] [ + [[link asio.reference.basic_seq_packet_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_seq_packet_socket from another. ] + ] + + [ [[link asio.reference.basic_seq_packet_socket.receive [*receive]]] [Receive some data on the socket. @@ -15566,6 +16344,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_seq_packet_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_seq_packet_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -15603,12 +16397,12 @@ [ [[link asio.reference.basic_seq_packet_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_seq_packet_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -16168,7 +16962,15 @@ `` [''''»''' [link asio.reference.basic_seq_packet_socket.basic_seq_packet_socket.overload4 more...]]`` -[section:overload1 basic_seq_packet_socket::basic_seq_packet_socket (1 of 4 overloads)] +Move-construct a [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`] from another. + + + ``[link asio.reference.basic_seq_packet_socket.basic_seq_packet_socket.overload5 basic_seq_packet_socket]``( + basic_seq_packet_socket && other); + `` [''''»''' [link asio.reference.basic_seq_packet_socket.basic_seq_packet_socket.overload5 more...]]`` + + +[section:overload1 basic_seq_packet_socket::basic_seq_packet_socket (1 of 5 overloads)] Construct a [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`] without opening it. @@ -16197,7 +16999,7 @@ -[section:overload2 basic_seq_packet_socket::basic_seq_packet_socket (2 of 4 overloads)] +[section:overload2 basic_seq_packet_socket::basic_seq_packet_socket (2 of 5 overloads)] Construct and open a [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`]. @@ -16239,7 +17041,7 @@ -[section:overload3 basic_seq_packet_socket::basic_seq_packet_socket (3 of 4 overloads)] +[section:overload3 basic_seq_packet_socket::basic_seq_packet_socket (3 of 5 overloads)] Construct a [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`], opening it and binding it to the given local endpoint. @@ -16281,7 +17083,7 @@ -[section:overload4 basic_seq_packet_socket::basic_seq_packet_socket (4 of 4 overloads)] +[section:overload4 basic_seq_packet_socket::basic_seq_packet_socket (4 of 5 overloads)] Construct a [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`] on an existing native socket. @@ -16325,6 +17127,45 @@ [endsect] + +[section:overload5 basic_seq_packet_socket::basic_seq_packet_socket (5 of 5 overloads)] + + +Move-construct a [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`] from another. + + + basic_seq_packet_socket( + basic_seq_packet_socket && other); + + +This constructor moves a sequenced packet socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:bind basic_seq_packet_socket::bind] @@ -16699,7 +17540,7 @@ [variablelist -[[asio::system_error][Thrown on failure.]] +[[asio::system_error][Thrown on failure. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -16736,7 +17577,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any.]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -17082,6 +17923,54 @@ [endsect] +[section:get_implementation basic_seq_packet_socket::get_implementation] + +[indexterm2 get_implementation..basic_seq_packet_socket] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_seq_packet_socket.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_seq_packet_socket.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_seq_packet_socket.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_seq_packet_socket.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_seq_packet_socket::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_seq_packet_socket::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_seq_packet_socket::get_io_service] @@ -17241,6 +18130,54 @@ [endsect] +[section:get_service basic_seq_packet_socket::get_service] + +[indexterm2 get_service..basic_seq_packet_socket] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_seq_packet_socket.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_seq_packet_socket.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_seq_packet_socket.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_seq_packet_socket.get_service.overload2 more...]]`` + + +[section:overload1 basic_seq_packet_socket::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_seq_packet_socket::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_seq_packet_socket::implementation] @@ -17248,7 +18185,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_seq_packet_socket] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -17933,7 +18870,9 @@ Construct a basic_socket, opening it and binding it to the given local endpoint. - Construct a basic_socket on an existing native socket. ] + Construct a basic_socket on an existing native socket. + + Move-construct a basic_socket from another. ] ] [ @@ -18018,6 +18957,11 @@ ] [ + [[link asio.reference.basic_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_socket from another. ] + ] + + [ [[link asio.reference.basic_socket.remote_endpoint [*remote_endpoint]]] [Get the remote endpoint of the socket. ] ] @@ -18039,6 +18983,16 @@ [[Name][Description]] [ + [[link asio.reference.basic_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket._basic_socket [*~basic_socket]]] [Protected destructor to prevent deletion through this type. ] ] @@ -18082,12 +19036,12 @@ [ [[link asio.reference.basic_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -18954,6 +19908,45 @@ [endsect] +[section:operator_eq_ basic_seq_packet_socket::operator=] + +[indexterm2 operator=..basic_seq_packet_socket] +Move-assign a [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`] from another. + + + basic_seq_packet_socket & operator=( + basic_seq_packet_socket && other); + + +This assignment operator moves a sequenced packet socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_seq_packet_socket `basic_seq_packet_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:protocol_type basic_seq_packet_socket::protocol_type] [indexterm2 protocol_type..basic_seq_packet_socket] @@ -19709,13 +20702,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_seq_packet_socket] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -20120,7 +21120,9 @@ Construct and open a basic_serial_port. - Construct a basic_serial_port on an existing native serial port. ] + Construct a basic_serial_port on an existing native serial port. + + Move-construct a basic_serial_port from another. ] ] [ @@ -20171,6 +21173,11 @@ ] [ + [[link asio.reference.basic_serial_port.operator_eq_ [*operator=]]] + [Move-assign a basic_serial_port from another. ] + ] + + [ [[link asio.reference.basic_serial_port.read_some [*read_some]]] [Read some data from the serial port. ] ] @@ -20192,18 +21199,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_serial_port.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_serial_port.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.basic_serial_port.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_serial_port.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -20421,7 +21444,15 @@ `` [''''»''' [link asio.reference.basic_serial_port.basic_serial_port.overload4 more...]]`` -[section:overload1 basic_serial_port::basic_serial_port (1 of 4 overloads)] +Move-construct a [link asio.reference.basic_serial_port `basic_serial_port`] from another. + + + ``[link asio.reference.basic_serial_port.basic_serial_port.overload5 basic_serial_port]``( + basic_serial_port && other); + `` [''''»''' [link asio.reference.basic_serial_port.basic_serial_port.overload5 more...]]`` + + +[section:overload1 basic_serial_port::basic_serial_port (1 of 5 overloads)] Construct a [link asio.reference.basic_serial_port `basic_serial_port`] without opening it. @@ -20450,7 +21481,7 @@ -[section:overload2 basic_serial_port::basic_serial_port (2 of 4 overloads)] +[section:overload2 basic_serial_port::basic_serial_port (2 of 5 overloads)] Construct and open a [link asio.reference.basic_serial_port `basic_serial_port`]. @@ -20482,7 +21513,7 @@ -[section:overload3 basic_serial_port::basic_serial_port (3 of 4 overloads)] +[section:overload3 basic_serial_port::basic_serial_port (3 of 5 overloads)] Construct and open a [link asio.reference.basic_serial_port `basic_serial_port`]. @@ -20514,7 +21545,7 @@ -[section:overload4 basic_serial_port::basic_serial_port (4 of 4 overloads)] +[section:overload4 basic_serial_port::basic_serial_port (4 of 5 overloads)] Construct a [link asio.reference.basic_serial_port `basic_serial_port`] on an existing native serial port. @@ -20555,6 +21586,45 @@ [endsect] + +[section:overload5 basic_serial_port::basic_serial_port (5 of 5 overloads)] + + +Move-construct a [link asio.reference.basic_serial_port `basic_serial_port`] from another. + + + basic_serial_port( + basic_serial_port && other); + + +This constructor moves a serial port from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_serial_port `basic_serial_port`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:cancel basic_serial_port::cancel] @@ -20701,6 +21771,54 @@ [endsect] +[section:get_implementation basic_serial_port::get_implementation] + +[indexterm2 get_implementation..basic_serial_port] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_serial_port.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_serial_port.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_serial_port.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_serial_port.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_serial_port::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_serial_port::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_serial_port::get_io_service] @@ -20825,6 +21943,54 @@ [endsect] +[section:get_service basic_serial_port::get_service] + +[indexterm2 get_service..basic_serial_port] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_serial_port.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_serial_port.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_serial_port.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_serial_port.get_service.overload2 more...]]`` + + +[section:overload1 basic_serial_port::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_serial_port::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_serial_port::implementation] @@ -20832,7 +21998,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_serial_port] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -21020,7 +22186,9 @@ Construct and open a basic_serial_port. - Construct a basic_serial_port on an existing native serial port. ] + Construct a basic_serial_port on an existing native serial port. + + Move-construct a basic_serial_port from another. ] ] [ @@ -21071,6 +22239,11 @@ ] [ + [[link asio.reference.basic_serial_port.operator_eq_ [*operator=]]] + [Move-assign a basic_serial_port from another. ] + ] + + [ [[link asio.reference.basic_serial_port.read_some [*read_some]]] [Read some data from the serial port. ] ] @@ -21092,18 +22265,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_serial_port.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_serial_port.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.basic_serial_port.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_serial_port.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -21292,6 +22481,45 @@ [endsect] + +[section:operator_eq_ basic_serial_port::operator=] + +[indexterm2 operator=..basic_serial_port] +Move-assign a [link asio.reference.basic_serial_port `basic_serial_port`] from another. + + + basic_serial_port & operator=( + basic_serial_port && other); + + +This assignment operator moves a serial port from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_serial_port `basic_serial_port`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [section:read_some basic_serial_port::read_some] [indexterm2 read_some..basic_serial_port] @@ -21497,13 +22725,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_serial_port] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -21837,18 +23072,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_signal_set.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_signal_set.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.basic_signal_set.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_signal_set.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -22447,6 +23698,54 @@ [endsect] +[section:get_implementation basic_signal_set::get_implementation] + +[indexterm2 get_implementation..basic_signal_set] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_signal_set.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_signal_set.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_signal_set.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_signal_set.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_signal_set::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_signal_set::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_signal_set::get_io_service] @@ -22473,6 +23772,54 @@ [endsect] +[section:get_service basic_signal_set::get_service] + +[indexterm2 get_service..basic_signal_set] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_signal_set.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_signal_set.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_signal_set.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_signal_set.get_service.overload2 more...]]`` + + +[section:overload1 basic_signal_set::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_signal_set::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_signal_set::implementation] @@ -22480,7 +23827,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_signal_set] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -22619,13 +23966,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_signal_set] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -22862,7 +24216,9 @@ Construct a basic_socket, opening it and binding it to the given local endpoint. - Construct a basic_socket on an existing native socket. ] + Construct a basic_socket on an existing native socket. + + Move-construct a basic_socket from another. ] ] [ @@ -22947,6 +24303,11 @@ ] [ + [[link asio.reference.basic_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_socket from another. ] + ] + + [ [[link asio.reference.basic_socket.remote_endpoint [*remote_endpoint]]] [Get the remote endpoint of the socket. ] ] @@ -22968,6 +24329,16 @@ [[Name][Description]] [ + [[link asio.reference.basic_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket._basic_socket [*~basic_socket]]] [Protected destructor to prevent deletion through this type. ] ] @@ -23011,12 +24382,12 @@ [ [[link asio.reference.basic_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -23358,7 +24729,15 @@ `` [''''»''' [link asio.reference.basic_socket.basic_socket.overload4 more...]]`` -[section:overload1 basic_socket::basic_socket (1 of 4 overloads)] +Move-construct a [link asio.reference.basic_socket `basic_socket`] from another. + + + ``[link asio.reference.basic_socket.basic_socket.overload5 basic_socket]``( + basic_socket && other); + `` [''''»''' [link asio.reference.basic_socket.basic_socket.overload5 more...]]`` + + +[section:overload1 basic_socket::basic_socket (1 of 5 overloads)] Construct a [link asio.reference.basic_socket `basic_socket`] without opening it. @@ -23387,7 +24766,7 @@ -[section:overload2 basic_socket::basic_socket (2 of 4 overloads)] +[section:overload2 basic_socket::basic_socket (2 of 5 overloads)] Construct and open a [link asio.reference.basic_socket `basic_socket`]. @@ -23429,7 +24808,7 @@ -[section:overload3 basic_socket::basic_socket (3 of 4 overloads)] +[section:overload3 basic_socket::basic_socket (3 of 5 overloads)] Construct a [link asio.reference.basic_socket `basic_socket`], opening it and binding it to the given local endpoint. @@ -23471,7 +24850,7 @@ -[section:overload4 basic_socket::basic_socket (4 of 4 overloads)] +[section:overload4 basic_socket::basic_socket (4 of 5 overloads)] Construct a [link asio.reference.basic_socket `basic_socket`] on an existing native socket. @@ -23515,6 +24894,45 @@ [endsect] + +[section:overload5 basic_socket::basic_socket (5 of 5 overloads)] + + +Move-construct a [link asio.reference.basic_socket `basic_socket`] from another. + + + basic_socket( + basic_socket && other); + + +This constructor moves a socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_socket `basic_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:bind basic_socket::bind] @@ -23874,7 +25292,7 @@ [variablelist -[[asio::system_error][Thrown on failure.]] +[[asio::system_error][Thrown on failure. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -23908,7 +25326,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any.]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -24248,6 +25666,54 @@ [endsect] +[section:get_implementation basic_socket::get_implementation] + +[indexterm2 get_implementation..basic_socket] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_socket.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_socket.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_socket.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_socket.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_socket::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_socket::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_socket::get_io_service] @@ -24405,6 +25871,54 @@ [endsect] +[section:get_service basic_socket::get_service] + +[indexterm2 get_service..basic_socket] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_socket.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_socket.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_socket.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_socket.get_service.overload2 more...]]`` + + +[section:overload1 basic_socket::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_socket::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_socket::implementation] @@ -24412,7 +25926,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_socket] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -25077,7 +26591,9 @@ Construct a basic_socket, opening it and binding it to the given local endpoint. - Construct a basic_socket on an existing native socket. ] + Construct a basic_socket on an existing native socket. + + Move-construct a basic_socket from another. ] ] [ @@ -25162,6 +26678,11 @@ ] [ + [[link asio.reference.basic_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_socket from another. ] + ] + + [ [[link asio.reference.basic_socket.remote_endpoint [*remote_endpoint]]] [Get the remote endpoint of the socket. ] ] @@ -25183,6 +26704,16 @@ [[Name][Description]] [ + [[link asio.reference.basic_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket._basic_socket [*~basic_socket]]] [Protected destructor to prevent deletion through this type. ] ] @@ -25226,12 +26757,12 @@ [ [[link asio.reference.basic_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -26068,6 +27599,45 @@ [endsect] +[section:operator_eq_ basic_socket::operator=] + +[indexterm2 operator=..basic_socket] +Move-assign a [link asio.reference.basic_socket `basic_socket`] from another. + + + basic_socket & operator=( + basic_socket && other); + + +This assignment operator moves a socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_socket `basic_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:protocol_type basic_socket::protocol_type] [indexterm2 protocol_type..basic_socket] @@ -26476,13 +28046,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_socket] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -27010,7 +28587,9 @@ Construct an acceptor opened on the given endpoint. - Construct a basic_socket_acceptor on an existing native acceptor. ] + Construct a basic_socket_acceptor on an existing native acceptor. + + Move-construct a basic_socket_acceptor from another. ] ] [ @@ -27088,12 +28667,33 @@ ] [ + [[link asio.reference.basic_socket_acceptor.operator_eq_ [*operator=]]] + [Move-assign a basic_socket_acceptor from another. ] + ] + + [ [[link asio.reference.basic_socket_acceptor.set_option [*set_option]]] [Set an option on the acceptor. ] ] ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_socket_acceptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket_acceptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -27131,12 +28731,12 @@ [ [[link asio.reference.basic_socket_acceptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket_acceptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -27658,7 +29258,15 @@ `` [''''»''' [link asio.reference.basic_socket_acceptor.basic_socket_acceptor.overload4 more...]]`` -[section:overload1 basic_socket_acceptor::basic_socket_acceptor (1 of 4 overloads)] +Move-construct a [link asio.reference.basic_socket_acceptor `basic_socket_acceptor`] from another. + + + ``[link asio.reference.basic_socket_acceptor.basic_socket_acceptor.overload5 basic_socket_acceptor]``( + basic_socket_acceptor && other); + `` [''''»''' [link asio.reference.basic_socket_acceptor.basic_socket_acceptor.overload5 more...]]`` + + +[section:overload1 basic_socket_acceptor::basic_socket_acceptor (1 of 5 overloads)] Construct an acceptor without opening it. @@ -27687,7 +29295,7 @@ -[section:overload2 basic_socket_acceptor::basic_socket_acceptor (2 of 4 overloads)] +[section:overload2 basic_socket_acceptor::basic_socket_acceptor (2 of 5 overloads)] Construct an open acceptor. @@ -27729,7 +29337,7 @@ -[section:overload3 basic_socket_acceptor::basic_socket_acceptor (3 of 4 overloads)] +[section:overload3 basic_socket_acceptor::basic_socket_acceptor (3 of 5 overloads)] Construct an acceptor opened on the given endpoint. @@ -27789,7 +29397,7 @@ -[section:overload4 basic_socket_acceptor::basic_socket_acceptor (4 of 4 overloads)] +[section:overload4 basic_socket_acceptor::basic_socket_acceptor (4 of 5 overloads)] Construct a [link asio.reference.basic_socket_acceptor `basic_socket_acceptor`] on an existing native acceptor. @@ -27833,6 +29441,45 @@ [endsect] + +[section:overload5 basic_socket_acceptor::basic_socket_acceptor (5 of 5 overloads)] + + +Move-construct a [link asio.reference.basic_socket_acceptor `basic_socket_acceptor`] from another. + + + basic_socket_acceptor( + basic_socket_acceptor && other); + + +This constructor moves an acceptor from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_socket_acceptor `basic_socket_acceptor`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:bind basic_socket_acceptor::bind] @@ -28397,6 +30044,54 @@ [endsect] +[section:get_implementation basic_socket_acceptor::get_implementation] + +[indexterm2 get_implementation..basic_socket_acceptor] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_socket_acceptor.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_socket_acceptor.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_socket_acceptor.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_socket_acceptor.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_socket_acceptor::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_socket_acceptor::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_socket_acceptor::get_io_service] @@ -28554,6 +30249,54 @@ [endsect] +[section:get_service basic_socket_acceptor::get_service] + +[indexterm2 get_service..basic_socket_acceptor] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_socket_acceptor.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_socket_acceptor.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_socket_acceptor.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_socket_acceptor.get_service.overload2 more...]]`` + + +[section:overload1 basic_socket_acceptor::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_socket_acceptor::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_socket_acceptor::implementation] @@ -28561,7 +30304,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_socket_acceptor] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -29654,6 +31397,45 @@ [endsect] +[section:operator_eq_ basic_socket_acceptor::operator=] + +[indexterm2 operator=..basic_socket_acceptor] +Move-assign a [link asio.reference.basic_socket_acceptor `basic_socket_acceptor`] from another. + + + basic_socket_acceptor & operator=( + basic_socket_acceptor && other); + + +This assignment operator moves an acceptor from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_socket_acceptor `basic_socket_acceptor`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:protocol_type basic_socket_acceptor::protocol_type] [indexterm2 protocol_type..basic_socket_acceptor] @@ -29951,13 +31733,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_socket_acceptor] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -30960,6 +32749,16 @@ ] [ + [[link asio.reference.basic_socket_streambuf.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket_streambuf.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket_streambuf.overflow [*overflow]]] [] ] @@ -31018,12 +32817,12 @@ [ [[link asio.reference.basic_socket_streambuf.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket_streambuf.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -31764,7 +33563,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any.]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -32301,6 +34100,54 @@ [endsect] +[section:get_implementation basic_socket_streambuf::get_implementation] + +[indexterm2 get_implementation..basic_socket_streambuf] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_socket_streambuf.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_socket_streambuf.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_socket_streambuf.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_socket_streambuf.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_socket_streambuf::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_socket_streambuf::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_socket_streambuf::get_io_service] @@ -32460,6 +34307,54 @@ [endsect] +[section:get_service basic_socket_streambuf::get_service] + +[indexterm2 get_service..basic_socket_streambuf] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_socket_streambuf.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_socket_streambuf.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_socket_streambuf.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_socket_streambuf.get_service.overload2 more...]]`` + + +[section:overload1 basic_socket_streambuf::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_socket_streambuf::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_socket_streambuf::implementation] @@ -32467,7 +34362,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_socket_streambuf] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -33170,7 +35065,9 @@ Construct a basic_socket, opening it and binding it to the given local endpoint. - Construct a basic_socket on an existing native socket. ] + Construct a basic_socket on an existing native socket. + + Move-construct a basic_socket from another. ] ] [ @@ -33255,6 +35152,11 @@ ] [ + [[link asio.reference.basic_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_socket from another. ] + ] + + [ [[link asio.reference.basic_socket.remote_endpoint [*remote_endpoint]]] [Get the remote endpoint of the socket. ] ] @@ -33276,6 +35178,16 @@ [[Name][Description]] [ + [[link asio.reference.basic_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket._basic_socket [*~basic_socket]]] [Protected destructor to prevent deletion through this type. ] ] @@ -33319,12 +35231,12 @@ [ [[link asio.reference.basic_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -34648,13 +36560,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_socket_streambuf] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -35296,7 +37215,9 @@ Construct a basic_stream_socket, opening it and binding it to the given local endpoint. - Construct a basic_stream_socket on an existing native socket. ] + Construct a basic_stream_socket on an existing native socket. + + Move-construct a basic_stream_socket from another. ] ] [ @@ -35381,6 +37302,11 @@ ] [ + [[link asio.reference.basic_stream_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_stream_socket from another. ] + ] + + [ [[link asio.reference.basic_stream_socket.read_some [*read_some]]] [Read some data from the socket. ] ] @@ -35419,6 +37345,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_stream_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_stream_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -35456,12 +37398,12 @@ [ [[link asio.reference.basic_stream_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_stream_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -36223,7 +38165,15 @@ `` [''''»''' [link asio.reference.basic_stream_socket.basic_stream_socket.overload4 more...]]`` -[section:overload1 basic_stream_socket::basic_stream_socket (1 of 4 overloads)] +Move-construct a [link asio.reference.basic_stream_socket `basic_stream_socket`] from another. + + + ``[link asio.reference.basic_stream_socket.basic_stream_socket.overload5 basic_stream_socket]``( + basic_stream_socket && other); + `` [''''»''' [link asio.reference.basic_stream_socket.basic_stream_socket.overload5 more...]]`` + + +[section:overload1 basic_stream_socket::basic_stream_socket (1 of 5 overloads)] Construct a [link asio.reference.basic_stream_socket `basic_stream_socket`] without opening it. @@ -36252,7 +38202,7 @@ -[section:overload2 basic_stream_socket::basic_stream_socket (2 of 4 overloads)] +[section:overload2 basic_stream_socket::basic_stream_socket (2 of 5 overloads)] Construct and open a [link asio.reference.basic_stream_socket `basic_stream_socket`]. @@ -36294,7 +38244,7 @@ -[section:overload3 basic_stream_socket::basic_stream_socket (3 of 4 overloads)] +[section:overload3 basic_stream_socket::basic_stream_socket (3 of 5 overloads)] Construct a [link asio.reference.basic_stream_socket `basic_stream_socket`], opening it and binding it to the given local endpoint. @@ -36336,7 +38286,7 @@ -[section:overload4 basic_stream_socket::basic_stream_socket (4 of 4 overloads)] +[section:overload4 basic_stream_socket::basic_stream_socket (4 of 5 overloads)] Construct a [link asio.reference.basic_stream_socket `basic_stream_socket`] on an existing native socket. @@ -36380,6 +38330,45 @@ [endsect] + +[section:overload5 basic_stream_socket::basic_stream_socket (5 of 5 overloads)] + + +Move-construct a [link asio.reference.basic_stream_socket `basic_stream_socket`] from another. + + + basic_stream_socket( + basic_stream_socket && other); + + +This constructor moves a stream socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_stream_socket `basic_stream_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:bind basic_stream_socket::bind] @@ -36754,7 +38743,7 @@ [variablelist -[[asio::system_error][Thrown on failure.]] +[[asio::system_error][Thrown on failure. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -36791,7 +38780,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any.]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed.]] ] @@ -37137,6 +39126,54 @@ [endsect] +[section:get_implementation basic_stream_socket::get_implementation] + +[indexterm2 get_implementation..basic_stream_socket] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.basic_stream_socket.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.basic_stream_socket.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.basic_stream_socket.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.basic_stream_socket.get_implementation.overload2 more...]]`` + + +[section:overload1 basic_stream_socket::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 basic_stream_socket::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service basic_stream_socket::get_io_service] @@ -37296,6 +39333,54 @@ [endsect] +[section:get_service basic_stream_socket::get_service] + +[indexterm2 get_service..basic_stream_socket] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.basic_stream_socket.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.basic_stream_socket.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.basic_stream_socket.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.basic_stream_socket.get_service.overload2 more...]]`` + + +[section:overload1 basic_stream_socket::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 basic_stream_socket::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation basic_stream_socket::implementation] @@ -37303,7 +39388,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..basic_stream_socket] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -37988,7 +40073,9 @@ Construct a basic_socket, opening it and binding it to the given local endpoint. - Construct a basic_socket on an existing native socket. ] + Construct a basic_socket on an existing native socket. + + Move-construct a basic_socket from another. ] ] [ @@ -38073,6 +40160,11 @@ ] [ + [[link asio.reference.basic_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_socket from another. ] + ] + + [ [[link asio.reference.basic_socket.remote_endpoint [*remote_endpoint]]] [Get the remote endpoint of the socket. ] ] @@ -38094,6 +40186,16 @@ [[Name][Description]] [ + [[link asio.reference.basic_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.basic_socket._basic_socket [*~basic_socket]]] [Protected destructor to prevent deletion through this type. ] ] @@ -38137,12 +40239,12 @@ [ [[link asio.reference.basic_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -39009,6 +41111,45 @@ [endsect] +[section:operator_eq_ basic_stream_socket::operator=] + +[indexterm2 operator=..basic_stream_socket] +Move-assign a [link asio.reference.basic_stream_socket `basic_stream_socket`] from another. + + + basic_stream_socket & operator=( + basic_stream_socket && other); + + +This assignment operator moves a stream socket from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.basic_stream_socket `basic_stream_socket`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:protocol_type basic_stream_socket::protocol_type] [indexterm2 protocol_type..basic_stream_socket] @@ -39955,13 +42096,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..basic_stream_socket] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -48146,6 +50294,16 @@ ] [ + [[link asio.reference.datagram_socket_service.move_assign [*move_assign]]] + [Move-assign from another datagram socket implementation. ] + ] + + [ + [[link asio.reference.datagram_socket_service.move_construct [*move_construct]]] + [Move-construct a new datagram socket implementation. ] + ] + + [ [[link asio.reference.datagram_socket_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native socket implementation. ] ] @@ -48209,11 +50367,6 @@ [Disable sends or receives on the socket. ] ] - [ - [[link asio.reference.datagram_socket_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - ] [heading Data Members] @@ -48640,6 +50793,39 @@ +[section:move_assign datagram_socket_service::move_assign] + +[indexterm2 move_assign..datagram_socket_service] +Move-assign from another datagram socket implementation. + + + void move_assign( + implementation_type & impl, + datagram_socket_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct datagram_socket_service::move_construct] + +[indexterm2 move_construct..datagram_socket_service] +Move-construct a new datagram socket implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native datagram_socket_service::native] [indexterm2 native..datagram_socket_service] @@ -48990,20 +51176,6 @@ -[section:shutdown_service datagram_socket_service::shutdown_service] - -[indexterm2 shutdown_service..datagram_socket_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [endsect] @@ -49111,18 +51283,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_deadline_timer.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_deadline_timer.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.basic_deadline_timer.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_deadline_timer.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -49333,11 +51521,6 @@ ] [ - [[link asio.reference.deadline_timer_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.deadline_timer_service.wait [*wait]]] [] ] @@ -49636,20 +51819,6 @@ -[section:shutdown_service deadline_timer_service::shutdown_service] - -[indexterm2 shutdown_service..deadline_timer_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:time_type deadline_timer_service::time_type] [indexterm2 time_type..deadline_timer_service] @@ -50941,6 +53110,13 @@ ] + [ + + [[link asio.reference.io_service.fork_event [*fork_event]]] + [Fork-related event notifications. ] + + ] + ] [heading Member Functions] @@ -50958,6 +53134,11 @@ ] [ + [[link asio.reference.io_service.notify_fork [*notify_fork]]] + [Notify the io_service of a fork-related event. ] + ] + + [ [[link asio.reference.io_service.poll [*poll]]] [Run the io_service object's event processing loop to execute ready handlers. ] ] @@ -51048,7 +53229,7 @@ [*Distinct] [*objects:] Safe. -[*Shared] [*objects:] Safe, with the exception that calling `reset()` while there are unfinished `run()`, `run_one()`, `poll()` or `poll_one()` calls results in undefined behaviour. +[*Shared] [*objects:] Safe, with the specific exceptions of the `reset()` and `notify_fork()` functions. Calling `reset()` while there are unfinished `run()`, `run_one()`, `poll()` or `poll_one()` calls results in undefined behaviour. The `notify_fork()` function should not be called while any [link asio.reference.io_service `io_service`] function, or any function on an I/O object that is associated with the [link asio.reference.io_service `io_service`], is being called in another thread. @@ -51250,6 +53431,44 @@ +[section:fork_event io_service::fork_event] + +[indexterm2 fork_event..io_service] +Fork-related event notifications. + + + enum fork_event + +[indexterm2 fork_prepare..io_service] +[indexterm2 fork_parent..io_service] +[indexterm2 fork_child..io_service] + +[heading Values] +[variablelist + + [ + [fork_prepare] + [Notify the io_service that the process is about to fork. ] + ] + + [ + [fork_parent] + [Notify the io_service that the process has forked and is the parent. ] + ] + + [ + [fork_child] + [Notify the io_service that the process has forked and is the child. ] + ] + +] + + + +[endsect] + + + [section:has_service io_service::has_service] [indexterm2 has_service..io_service] @@ -51349,6 +53568,72 @@ [endsect] + +[section:notify_fork io_service::notify_fork] + +[indexterm2 notify_fork..io_service] +Notify the [link asio.reference.io_service `io_service`] of a fork-related event. + + + void notify_fork( + asio::io_service::fork_event event); + + +This function is used to inform the [link asio.reference.io_service `io_service`] that the process is about to fork, or has just forked. This allows the [link asio.reference.io_service `io_service`], and the services it contains, to perform any necessary housekeeping to ensure correct operation following a fork. + +This function must not be called while any other [link asio.reference.io_service `io_service`] function, or any function on an I/O object associated with the [link asio.reference.io_service `io_service`], is being called in another thread. It is, however, safe to call this function from within a completion handler, provided no other thread is accessing the [link asio.reference.io_service `io_service`]. + + +[heading Parameters] + + +[variablelist + +[[event][A fork-related event.]] + +] + + +[heading Exceptions] + + +[variablelist + +[[asio::system_error][Thrown on failure. If the notification fails the [link asio.reference.io_service `io_service`] object should no longer be used and should be destroyed.]] + +] + + +[heading Example] + +The following code illustrates how to incorporate the `notify_fork()` function: + + my_io_service.notify_fork(asio::io_service::fork_prepare); + if (fork() == 0) + { + // This is the child process. + my_io_service.notify_fork(asio::io_service::fork_child); + } + else + { + // This is the parent process. + my_io_service.notify_fork(asio::io_service::fork_parent); + } + + + + + +[heading Remarks] + +For each service object `svc` in the [link asio.reference.io_service `io_service`] set, performs `svc->fork_service();`. When processing the fork\_prepare event, services are visited in reverse order of the beginning of service object lifetime. Otherwise, services are visited in order of the beginning of service object lifetime. + + + + +[endsect] + + [section:poll io_service::poll] [indexterm2 poll..io_service] @@ -55784,18 +58069,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.ip__basic_resolver.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.ip__basic_resolver.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.ip__basic_resolver.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.ip__basic_resolver.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -56005,6 +58306,54 @@ [endsect] +[section:get_implementation ip::basic_resolver::get_implementation] + +[indexterm2 get_implementation..ip::basic_resolver] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.ip__basic_resolver.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.ip__basic_resolver.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.ip__basic_resolver.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.ip__basic_resolver.get_implementation.overload2 more...]]`` + + +[section:overload1 ip::basic_resolver::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 ip::basic_resolver::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service ip::basic_resolver::get_io_service] @@ -56031,6 +58380,54 @@ [endsect] +[section:get_service ip::basic_resolver::get_service] + +[indexterm2 get_service..ip::basic_resolver] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.ip__basic_resolver.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.ip__basic_resolver.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.ip__basic_resolver.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.ip__basic_resolver.get_service.overload2 more...]]`` + + +[section:overload1 ip::basic_resolver::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 ip::basic_resolver::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation ip::basic_resolver::implementation] @@ -56038,7 +58435,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..ip::basic_resolver] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -56568,13 +58965,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..ip::basic_resolver] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -58406,18 +60810,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.ip__basic_resolver.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.ip__basic_resolver.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.ip__basic_resolver.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.ip__basic_resolver.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -58666,7 +61086,9 @@ Construct a basic_raw_socket, opening it and binding it to the given local endpoint. - Construct a basic_raw_socket on an existing native socket. ] + Construct a basic_raw_socket on an existing native socket. + + Move-construct a basic_raw_socket from another. ] ] [ @@ -58751,6 +61173,11 @@ ] [ + [[link asio.reference.basic_raw_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_raw_socket from another. ] + ] + + [ [[link asio.reference.basic_raw_socket.receive [*receive]]] [Receive some data on a connected socket. ] ] @@ -58787,6 +61214,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_raw_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_raw_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -58824,12 +61267,12 @@ [ [[link asio.reference.basic_raw_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_raw_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -59438,11 +61881,6 @@ [Construct a new resolver service for the specified io_service. ] ] - [ - [[link asio.reference.ip__resolver_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - ] [heading Data Members] @@ -59997,20 +62435,6 @@ -[section:shutdown_service ip::resolver_service::shutdown_service] - -[indexterm2 shutdown_service..ip::resolver_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [endsect] [section:ip__tcp ip::tcp] @@ -60327,7 +62751,9 @@ Construct an acceptor opened on the given endpoint. - Construct a basic_socket_acceptor on an existing native acceptor. ] + Construct a basic_socket_acceptor on an existing native acceptor. + + Move-construct a basic_socket_acceptor from another. ] ] [ @@ -60405,12 +62831,33 @@ ] [ + [[link asio.reference.basic_socket_acceptor.operator_eq_ [*operator=]]] + [Move-assign a basic_socket_acceptor from another. ] + ] + + [ [[link asio.reference.basic_socket_acceptor.set_option [*set_option]]] [Set an option on the acceptor. ] ] ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_socket_acceptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket_acceptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -60448,12 +62895,12 @@ [ [[link asio.reference.basic_socket_acceptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket_acceptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -60967,18 +63414,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.ip__basic_resolver.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.ip__basic_resolver.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.ip__basic_resolver.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.ip__basic_resolver.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -61227,7 +63690,9 @@ Construct a basic_stream_socket, opening it and binding it to the given local endpoint. - Construct a basic_stream_socket on an existing native socket. ] + Construct a basic_stream_socket on an existing native socket. + + Move-construct a basic_stream_socket from another. ] ] [ @@ -61312,6 +63777,11 @@ ] [ + [[link asio.reference.basic_stream_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_stream_socket from another. ] + ] + + [ [[link asio.reference.basic_stream_socket.read_some [*read_some]]] [Read some data from the socket. ] ] @@ -61350,6 +63820,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_stream_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_stream_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -61387,12 +63873,12 @@ [ [[link asio.reference.basic_stream_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_stream_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -61892,18 +64378,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.ip__basic_resolver.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.ip__basic_resolver.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.ip__basic_resolver.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.ip__basic_resolver.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -62152,7 +64654,9 @@ Construct a basic_datagram_socket, opening it and binding it to the given local endpoint. - Construct a basic_datagram_socket on an existing native socket. ] + Construct a basic_datagram_socket on an existing native socket. + + Move-construct a basic_datagram_socket from another. ] ] [ @@ -62237,6 +64741,11 @@ ] [ + [[link asio.reference.basic_datagram_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_datagram_socket from another. ] + ] + + [ [[link asio.reference.basic_datagram_socket.receive [*receive]]] [Receive some data on a connected socket. ] ] @@ -62273,6 +64782,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_datagram_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_datagram_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -62310,12 +64835,12 @@ [ [[link asio.reference.basic_datagram_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_datagram_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -63801,7 +66326,9 @@ Construct a basic_datagram_socket, opening it and binding it to the given local endpoint. - Construct a basic_datagram_socket on an existing native socket. ] + Construct a basic_datagram_socket on an existing native socket. + + Move-construct a basic_datagram_socket from another. ] ] [ @@ -63886,6 +66413,11 @@ ] [ + [[link asio.reference.basic_datagram_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_datagram_socket from another. ] + ] + + [ [[link asio.reference.basic_datagram_socket.receive [*receive]]] [Receive some data on a connected socket. ] ] @@ -63922,6 +66454,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_datagram_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_datagram_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -63959,12 +66507,12 @@ [ [[link asio.reference.basic_datagram_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_datagram_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -64282,7 +66830,9 @@ Construct an acceptor opened on the given endpoint. - Construct a basic_socket_acceptor on an existing native acceptor. ] + Construct a basic_socket_acceptor on an existing native acceptor. + + Move-construct a basic_socket_acceptor from another. ] ] [ @@ -64360,12 +66910,33 @@ ] [ + [[link asio.reference.basic_socket_acceptor.operator_eq_ [*operator=]]] + [Move-assign a basic_socket_acceptor from another. ] + ] + + [ [[link asio.reference.basic_socket_acceptor.set_option [*set_option]]] [Set an option on the acceptor. ] ] ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_socket_acceptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_socket_acceptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -64403,12 +66974,12 @@ [ [[link asio.reference.basic_socket_acceptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_socket_acceptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -64947,7 +67518,9 @@ Construct a basic_stream_socket, opening it and binding it to the given local endpoint. - Construct a basic_stream_socket on an existing native socket. ] + Construct a basic_stream_socket on an existing native socket. + + Move-construct a basic_stream_socket from another. ] ] [ @@ -65032,6 +67605,11 @@ ] [ + [[link asio.reference.basic_stream_socket.operator_eq_ [*operator=]]] + [Move-assign a basic_stream_socket from another. ] + ] + + [ [[link asio.reference.basic_stream_socket.read_some [*read_some]]] [Read some data from the socket. ] ] @@ -65070,6 +67648,22 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_stream_socket.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_stream_socket.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Data Members] [table [[Name][Description]] @@ -65107,12 +67701,12 @@ [ [[link asio.reference.basic_stream_socket.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_stream_socket.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -65968,7 +68562,9 @@ [[link asio.reference.posix__basic_descriptor.basic_descriptor [*basic_descriptor]]] [Construct a basic_descriptor without opening it. - Construct a basic_descriptor on an existing native descriptor. ] + Construct a basic_descriptor on an existing native descriptor. + + Move-construct a basic_descriptor from another. ] ] [ @@ -66028,6 +68624,11 @@ ] [ + [[link asio.reference.posix__basic_descriptor.operator_eq_ [*operator=]]] + [Move-assign a basic_descriptor from another. ] + ] + + [ [[link asio.reference.posix__basic_descriptor.release [*release]]] [Release ownership of the native descriptor implementation. ] ] @@ -66039,6 +68640,16 @@ [[Name][Description]] [ + [[link asio.reference.posix__basic_descriptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.posix__basic_descriptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.posix__basic_descriptor._basic_descriptor [*~basic_descriptor]]] [Protected destructor to prevent deletion through this type. ] ] @@ -66051,12 +68662,12 @@ [ [[link asio.reference.posix__basic_descriptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.posix__basic_descriptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -66146,7 +68757,15 @@ `` [''''»''' [link asio.reference.posix__basic_descriptor.basic_descriptor.overload2 more...]]`` -[section:overload1 posix::basic_descriptor::basic_descriptor (1 of 2 overloads)] +Move-construct a [link asio.reference.posix__basic_descriptor `posix::basic_descriptor`] from another. + + + ``[link asio.reference.posix__basic_descriptor.basic_descriptor.overload3 basic_descriptor]``( + basic_descriptor && other); + `` [''''»''' [link asio.reference.posix__basic_descriptor.basic_descriptor.overload3 more...]]`` + + +[section:overload1 posix::basic_descriptor::basic_descriptor (1 of 3 overloads)] Construct a [link asio.reference.posix__basic_descriptor `posix::basic_descriptor`] without opening it. @@ -66175,7 +68794,7 @@ -[section:overload2 posix::basic_descriptor::basic_descriptor (2 of 2 overloads)] +[section:overload2 posix::basic_descriptor::basic_descriptor (2 of 3 overloads)] Construct a [link asio.reference.posix__basic_descriptor `posix::basic_descriptor`] on an existing native descriptor. @@ -66216,6 +68835,45 @@ [endsect] + +[section:overload3 posix::basic_descriptor::basic_descriptor (3 of 3 overloads)] + + +Move-construct a [link asio.reference.posix__basic_descriptor `posix::basic_descriptor`] from another. + + + basic_descriptor( + basic_descriptor && other); + + +This constructor moves a descriptor from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.posix__basic_descriptor `posix::basic_descriptor`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] @@ -66364,7 +69022,7 @@ [variablelist -[[asio::system_error][Thrown on failure. ]] +[[asio::system_error][Thrown on failure. Note that, even if the function indicates an error, the underlying descriptor is closed. ]] ] @@ -66393,7 +69051,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any. ]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed. ]] ] @@ -66405,6 +69063,54 @@ [endsect] +[section:get_implementation posix::basic_descriptor::get_implementation] + +[indexterm2 get_implementation..posix::basic_descriptor] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.posix__basic_descriptor.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.posix__basic_descriptor.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.posix__basic_descriptor.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.posix__basic_descriptor.get_implementation.overload2 more...]]`` + + +[section:overload1 posix::basic_descriptor::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 posix::basic_descriptor::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service posix::basic_descriptor::get_io_service] @@ -66431,6 +69137,54 @@ [endsect] +[section:get_service posix::basic_descriptor::get_service] + +[indexterm2 get_service..posix::basic_descriptor] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.posix__basic_descriptor.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.posix__basic_descriptor.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.posix__basic_descriptor.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.posix__basic_descriptor.get_service.overload2 more...]]`` + + +[section:overload1 posix::basic_descriptor::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 posix::basic_descriptor::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation posix::basic_descriptor::implementation] @@ -66438,7 +69192,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..posix::basic_descriptor] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -66759,7 +69513,9 @@ [[link asio.reference.posix__basic_descriptor.basic_descriptor [*basic_descriptor]]] [Construct a basic_descriptor without opening it. - Construct a basic_descriptor on an existing native descriptor. ] + Construct a basic_descriptor on an existing native descriptor. + + Move-construct a basic_descriptor from another. ] ] [ @@ -66819,6 +69575,11 @@ ] [ + [[link asio.reference.posix__basic_descriptor.operator_eq_ [*operator=]]] + [Move-assign a basic_descriptor from another. ] + ] + + [ [[link asio.reference.posix__basic_descriptor.release [*release]]] [Release ownership of the native descriptor implementation. ] ] @@ -66830,6 +69591,16 @@ [[Name][Description]] [ + [[link asio.reference.posix__basic_descriptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.posix__basic_descriptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.posix__basic_descriptor._basic_descriptor [*~basic_descriptor]]] [Protected destructor to prevent deletion through this type. ] ] @@ -66842,12 +69613,12 @@ [ [[link asio.reference.posix__basic_descriptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.posix__basic_descriptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -67241,6 +70012,45 @@ +[section:operator_eq_ posix::basic_descriptor::operator=] + +[indexterm2 operator=..posix::basic_descriptor] +Move-assign a [link asio.reference.posix__basic_descriptor `posix::basic_descriptor`] from another. + + + basic_descriptor & operator=( + basic_descriptor && other); + + +This assignment operator moves a descriptor from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.posix__basic_descriptor `posix::basic_descriptor`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:release posix::basic_descriptor::release] [indexterm2 release..posix::basic_descriptor] @@ -67265,13 +70075,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..posix::basic_descriptor] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -67406,7 +70223,9 @@ [[link asio.reference.posix__basic_stream_descriptor.basic_stream_descriptor [*basic_stream_descriptor]]] [Construct a basic_stream_descriptor without opening it. - Construct a basic_stream_descriptor on an existing native descriptor. ] + Construct a basic_stream_descriptor on an existing native descriptor. + + Move-construct a basic_stream_descriptor from another. ] ] [ @@ -67466,6 +70285,11 @@ ] [ + [[link asio.reference.posix__basic_stream_descriptor.operator_eq_ [*operator=]]] + [Move-assign a basic_stream_descriptor from another. ] + ] + + [ [[link asio.reference.posix__basic_stream_descriptor.read_some [*read_some]]] [Read some data from the descriptor. ] ] @@ -67482,18 +70306,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.posix__basic_stream_descriptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.posix__basic_stream_descriptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.posix__basic_stream_descriptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.posix__basic_stream_descriptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -67704,7 +70544,15 @@ `` [''''»''' [link asio.reference.posix__basic_stream_descriptor.basic_stream_descriptor.overload2 more...]]`` -[section:overload1 posix::basic_stream_descriptor::basic_stream_descriptor (1 of 2 overloads)] +Move-construct a [link asio.reference.posix__basic_stream_descriptor `posix::basic_stream_descriptor`] from another. + + + ``[link asio.reference.posix__basic_stream_descriptor.basic_stream_descriptor.overload3 basic_stream_descriptor]``( + basic_stream_descriptor && other); + `` [''''»''' [link asio.reference.posix__basic_stream_descriptor.basic_stream_descriptor.overload3 more...]]`` + + +[section:overload1 posix::basic_stream_descriptor::basic_stream_descriptor (1 of 3 overloads)] Construct a [link asio.reference.posix__basic_stream_descriptor `posix::basic_stream_descriptor`] without opening it. @@ -67733,7 +70581,7 @@ -[section:overload2 posix::basic_stream_descriptor::basic_stream_descriptor (2 of 2 overloads)] +[section:overload2 posix::basic_stream_descriptor::basic_stream_descriptor (2 of 3 overloads)] Construct a [link asio.reference.posix__basic_stream_descriptor `posix::basic_stream_descriptor`] on an existing native descriptor. @@ -67774,6 +70622,45 @@ [endsect] + +[section:overload3 posix::basic_stream_descriptor::basic_stream_descriptor (3 of 3 overloads)] + + +Move-construct a [link asio.reference.posix__basic_stream_descriptor `posix::basic_stream_descriptor`] from another. + + + basic_stream_descriptor( + basic_stream_descriptor && other); + + +This constructor moves a stream descriptor from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.posix__basic_stream_descriptor `posix::basic_stream_descriptor`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] @@ -67931,7 +70818,7 @@ [variablelist -[[asio::system_error][Thrown on failure. ]] +[[asio::system_error][Thrown on failure. Note that, even if the function indicates an error, the underlying descriptor is closed. ]] ] @@ -67963,7 +70850,7 @@ [variablelist -[[ec][Set to indicate what error occurred, if any. ]] +[[ec][Set to indicate what error occurred, if any. Note that, even if the function indicates an error, the underlying descriptor is closed. ]] ] @@ -67975,6 +70862,54 @@ [endsect] +[section:get_implementation posix::basic_stream_descriptor::get_implementation] + +[indexterm2 get_implementation..posix::basic_stream_descriptor] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.posix__basic_stream_descriptor.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.posix__basic_stream_descriptor.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.posix__basic_stream_descriptor.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.posix__basic_stream_descriptor.get_implementation.overload2 more...]]`` + + +[section:overload1 posix::basic_stream_descriptor::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 posix::basic_stream_descriptor::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service posix::basic_stream_descriptor::get_io_service] @@ -68001,6 +70936,54 @@ [endsect] +[section:get_service posix::basic_stream_descriptor::get_service] + +[indexterm2 get_service..posix::basic_stream_descriptor] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.posix__basic_stream_descriptor.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.posix__basic_stream_descriptor.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.posix__basic_stream_descriptor.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.posix__basic_stream_descriptor.get_service.overload2 more...]]`` + + +[section:overload1 posix::basic_stream_descriptor::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 posix::basic_stream_descriptor::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation posix::basic_stream_descriptor::implementation] @@ -68008,7 +70991,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..posix::basic_stream_descriptor] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -68343,7 +71326,9 @@ [[link asio.reference.posix__basic_descriptor.basic_descriptor [*basic_descriptor]]] [Construct a basic_descriptor without opening it. - Construct a basic_descriptor on an existing native descriptor. ] + Construct a basic_descriptor on an existing native descriptor. + + Move-construct a basic_descriptor from another. ] ] [ @@ -68403,6 +71388,11 @@ ] [ + [[link asio.reference.posix__basic_descriptor.operator_eq_ [*operator=]]] + [Move-assign a basic_descriptor from another. ] + ] + + [ [[link asio.reference.posix__basic_descriptor.release [*release]]] [Release ownership of the native descriptor implementation. ] ] @@ -68414,6 +71404,16 @@ [[Name][Description]] [ + [[link asio.reference.posix__basic_descriptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.posix__basic_descriptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.posix__basic_descriptor._basic_descriptor [*~basic_descriptor]]] [Protected destructor to prevent deletion through this type. ] ] @@ -68426,12 +71426,12 @@ [ [[link asio.reference.posix__basic_descriptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.posix__basic_descriptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -68848,6 +71848,45 @@ [endsect] + +[section:operator_eq_ posix::basic_stream_descriptor::operator=] + +[indexterm2 operator=..posix::basic_stream_descriptor] +Move-assign a [link asio.reference.posix__basic_stream_descriptor `posix::basic_stream_descriptor`] from another. + + + basic_stream_descriptor & operator=( + basic_stream_descriptor && other); + + +This assignment operator moves a stream descriptor from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.posix__basic_stream_descriptor `posix::basic_stream_descriptor`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [section:read_some posix::basic_stream_descriptor::read_some] [indexterm2 read_some..posix::basic_stream_descriptor] @@ -69002,13 +72041,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..posix::basic_stream_descriptor] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -69395,7 +72441,9 @@ [[link asio.reference.posix__basic_stream_descriptor.basic_stream_descriptor [*basic_stream_descriptor]]] [Construct a basic_stream_descriptor without opening it. - Construct a basic_stream_descriptor on an existing native descriptor. ] + Construct a basic_stream_descriptor on an existing native descriptor. + + Move-construct a basic_stream_descriptor from another. ] ] [ @@ -69455,6 +72503,11 @@ ] [ + [[link asio.reference.posix__basic_stream_descriptor.operator_eq_ [*operator=]]] + [Move-assign a basic_stream_descriptor from another. ] + ] + + [ [[link asio.reference.posix__basic_stream_descriptor.read_some [*read_some]]] [Read some data from the descriptor. ] ] @@ -69471,18 +72524,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.posix__basic_stream_descriptor.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.posix__basic_stream_descriptor.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.posix__basic_stream_descriptor.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.posix__basic_stream_descriptor.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -69602,6 +72671,16 @@ ] [ + [[link asio.reference.posix__stream_descriptor_service.move_assign [*move_assign]]] + [Move-assign from another stream descriptor implementation. ] + ] + + [ + [[link asio.reference.posix__stream_descriptor_service.move_construct [*move_construct]]] + [Move-construct a new stream descriptor implementation. ] + ] + + [ [[link asio.reference.posix__stream_descriptor_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native descriptor implementation. ] ] @@ -69636,11 +72715,6 @@ ] [ - [[link asio.reference.posix__stream_descriptor_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.posix__stream_descriptor_service.stream_descriptor_service [*stream_descriptor_service]]] [Construct a new stream descriptor service for the specified io_service. ] ] @@ -69875,6 +72949,39 @@ +[section:move_assign posix::stream_descriptor_service::move_assign] + +[indexterm2 move_assign..posix::stream_descriptor_service] +Move-assign from another stream descriptor implementation. + + + void move_assign( + implementation_type & impl, + stream_descriptor_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct posix::stream_descriptor_service::move_construct] + +[indexterm2 move_construct..posix::stream_descriptor_service] +Move-construct a new stream descriptor implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native posix::stream_descriptor_service::native] [indexterm2 native..posix::stream_descriptor_service] @@ -70089,20 +73196,6 @@ -[section:shutdown_service posix::stream_descriptor_service::shutdown_service] - -[indexterm2 shutdown_service..posix::stream_descriptor_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:stream_descriptor_service posix::stream_descriptor_service::stream_descriptor_service] [indexterm2 stream_descriptor_service..posix::stream_descriptor_service] @@ -70292,6 +73385,16 @@ ] [ + [[link asio.reference.raw_socket_service.move_assign [*move_assign]]] + [Move-assign from another raw socket implementation. ] + ] + + [ + [[link asio.reference.raw_socket_service.move_construct [*move_construct]]] + [Move-construct a new raw socket implementation. ] + ] + + [ [[link asio.reference.raw_socket_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native socket implementation. ] ] @@ -70360,11 +73463,6 @@ [Disable sends or receives on the socket. ] ] - [ - [[link asio.reference.raw_socket_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - ] [heading Data Members] @@ -70776,6 +73874,39 @@ +[section:move_assign raw_socket_service::move_assign] + +[indexterm2 move_assign..raw_socket_service] +Move-assign from another raw socket implementation. + + + void move_assign( + implementation_type & impl, + raw_socket_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct raw_socket_service::move_construct] + +[indexterm2 move_construct..raw_socket_service] +Move-construct a new raw socket implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native raw_socket_service::native] [indexterm2 native..raw_socket_service] @@ -71141,20 +74272,6 @@ -[section:shutdown_service raw_socket_service::shutdown_service] - -[indexterm2 shutdown_service..raw_socket_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [endsect] [section:read read] @@ -73391,6 +76508,16 @@ ] [ + [[link asio.reference.seq_packet_socket_service.move_assign [*move_assign]]] + [Move-assign from another sequenced packet socket implementation. ] + ] + + [ + [[link asio.reference.seq_packet_socket_service.move_construct [*move_construct]]] + [Move-construct a new sequenced packet socket implementation. ] + ] + + [ [[link asio.reference.seq_packet_socket_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native socket implementation. ] ] @@ -73449,11 +76576,6 @@ [Disable sends or receives on the socket. ] ] - [ - [[link asio.reference.seq_packet_socket_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - ] [heading Data Members] @@ -73824,6 +76946,39 @@ +[section:move_assign seq_packet_socket_service::move_assign] + +[indexterm2 move_assign..seq_packet_socket_service] +Move-assign from another sequenced packet socket implementation. + + + void move_assign( + implementation_type & impl, + seq_packet_socket_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct seq_packet_socket_service::move_construct] + +[indexterm2 move_construct..seq_packet_socket_service] +Move-construct a new sequenced packet socket implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native seq_packet_socket_service::native] [indexterm2 native..seq_packet_socket_service] @@ -74150,20 +77305,6 @@ -[section:shutdown_service seq_packet_socket_service::shutdown_service] - -[indexterm2 shutdown_service..seq_packet_socket_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [endsect] @@ -74242,7 +77383,9 @@ Construct and open a basic_serial_port. - Construct a basic_serial_port on an existing native serial port. ] + Construct a basic_serial_port on an existing native serial port. + + Move-construct a basic_serial_port from another. ] ] [ @@ -74293,6 +77436,11 @@ ] [ + [[link asio.reference.basic_serial_port.operator_eq_ [*operator=]]] + [Move-assign a basic_serial_port from another. ] + ] + + [ [[link asio.reference.basic_serial_port.read_some [*read_some]]] [Read some data from the serial port. ] ] @@ -74314,18 +77462,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_serial_port.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_serial_port.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.basic_serial_port.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_serial_port.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -75170,6 +78334,16 @@ ] [ + [[link asio.reference.serial_port_service.move_assign [*move_assign]]] + [Move-assign from another serial port implementation. ] + ] + + [ + [[link asio.reference.serial_port_service.move_construct [*move_construct]]] + [Move-construct a new serial port implementation. ] + ] + + [ [[link asio.reference.serial_port_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native handle implementation. ] ] @@ -75205,11 +78379,6 @@ ] [ - [[link asio.reference.serial_port_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.serial_port_service.write_some [*write_some]]] [Write the given data to the stream. ] ] @@ -75439,6 +78608,39 @@ +[section:move_assign serial_port_service::move_assign] + +[indexterm2 move_assign..serial_port_service] +Move-assign from another serial port implementation. + + + void move_assign( + implementation_type & impl, + serial_port_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct serial_port_service::move_construct] + +[indexterm2 move_construct..serial_port_service] +Move-construct a new serial port implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native serial_port_service::native] [indexterm2 native..serial_port_service] @@ -75597,20 +78799,6 @@ -[section:shutdown_service serial_port_service::shutdown_service] - -[indexterm2 shutdown_service..serial_port_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:write_some serial_port_service::write_some] [indexterm2 write_some..serial_port_service] @@ -75750,18 +78938,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.basic_signal_set.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.basic_signal_set.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.basic_signal_set.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.basic_signal_set.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -75907,11 +79111,6 @@ ] [ - [[link asio.reference.signal_set_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.signal_set_service.signal_set_service [*signal_set_service]]] [Construct a new signal set service for the specified io_service. ] ] @@ -76100,20 +79299,6 @@ -[section:shutdown_service signal_set_service::shutdown_service] - -[indexterm2 shutdown_service..signal_set_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:signal_set_service signal_set_service::signal_set_service] [indexterm2 signal_set_service..signal_set_service] @@ -76259,6 +79444,16 @@ ] [ + [[link asio.reference.socket_acceptor_service.move_assign [*move_assign]]] + [Move-assign from another socket acceptor implementation. ] + ] + + [ + [[link asio.reference.socket_acceptor_service.move_construct [*move_construct]]] + [Move-construct a new socket acceptor implementation. ] + ] + + [ [[link asio.reference.socket_acceptor_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native acceptor implementation. ] ] @@ -76293,11 +79488,6 @@ ] [ - [[link asio.reference.socket_acceptor_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.socket_acceptor_service.socket_acceptor_service [*socket_acceptor_service]]] [Construct a new socket acceptor service for the specified io_service. ] ] @@ -76619,6 +79809,39 @@ +[section:move_assign socket_acceptor_service::move_assign] + +[indexterm2 move_assign..socket_acceptor_service] +Move-assign from another socket acceptor implementation. + + + void move_assign( + implementation_type & impl, + socket_acceptor_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct socket_acceptor_service::move_construct] + +[indexterm2 move_construct..socket_acceptor_service] +Move-construct a new socket acceptor implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native socket_acceptor_service::native] [indexterm2 native..socket_acceptor_service] @@ -76856,20 +80079,6 @@ -[section:shutdown_service socket_acceptor_service::shutdown_service] - -[indexterm2 shutdown_service..socket_acceptor_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:socket_acceptor_service socket_acceptor_service::socket_acceptor_service] [indexterm2 socket_acceptor_service..socket_acceptor_service] @@ -80155,11 +83364,6 @@ ] [ - [[link asio.reference.ssl__context_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.ssl__context_service.use_certificate_chain_file [*use_certificate_chain_file]]] [Use a certificate chain from a file. ] ] @@ -80403,20 +83607,6 @@ -[section:shutdown_service ssl::context_service::shutdown_service] - -[indexterm2 shutdown_service..ssl::context_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:use_certificate_chain_file ssl::context_service::use_certificate_chain_file] [indexterm2 use_certificate_chain_file..ssl::context_service] @@ -81905,11 +85095,6 @@ ] [ - [[link asio.reference.ssl__stream_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.ssl__stream_service.stream_service [*stream_service]]] [Construct a new stream service for the specified io_service. ] ] @@ -82228,20 +85413,6 @@ -[section:shutdown_service ssl::stream_service::shutdown_service] - -[indexterm2 shutdown_service..ssl::stream_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:stream_service ssl::stream_service::stream_service] [indexterm2 stream_service..ssl::stream_service] @@ -82536,6 +85707,16 @@ ] [ + [[link asio.reference.stream_socket_service.move_assign [*move_assign]]] + [Move-assign from another stream socket implementation. ] + ] + + [ + [[link asio.reference.stream_socket_service.move_construct [*move_construct]]] + [Move-construct a new stream socket implementation. ] + ] + + [ [[link asio.reference.stream_socket_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native socket implementation. ] ] @@ -82590,11 +85771,6 @@ ] [ - [[link asio.reference.stream_socket_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.stream_socket_service.stream_socket_service [*stream_socket_service]]] [Construct a new stream socket service for the specified io_service. ] ] @@ -82968,6 +86144,39 @@ +[section:move_assign stream_socket_service::move_assign] + +[indexterm2 move_assign..stream_socket_service] +Move-assign from another stream socket implementation. + + + void move_assign( + implementation_type & impl, + stream_socket_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct stream_socket_service::move_construct] + +[indexterm2 move_construct..stream_socket_service] +Move-construct a new stream socket implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native stream_socket_service::native] [indexterm2 native..stream_socket_service] @@ -83278,20 +86487,6 @@ -[section:shutdown_service stream_socket_service::shutdown_service] - -[indexterm2 shutdown_service..stream_socket_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:stream_socket_service stream_socket_service::stream_socket_service] [indexterm2 stream_socket_service..stream_socket_service] @@ -84246,7 +87441,9 @@ [[link asio.reference.windows__basic_handle.basic_handle [*basic_handle]]] [Construct a basic_handle without opening it. - Construct a basic_handle on an existing native handle. ] + Construct a basic_handle on an existing native handle. + + Move-construct a basic_handle from another. ] ] [ @@ -84286,6 +87483,11 @@ [Get the native handle representation. ] ] + [ + [[link asio.reference.windows__basic_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_handle from another. ] + ] + ] [heading Protected Member Functions] @@ -84293,6 +87495,16 @@ [[Name][Description]] [ + [[link asio.reference.windows__basic_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.windows__basic_handle._basic_handle [*~basic_handle]]] [Protected destructor to prevent deletion through this type. ] ] @@ -84305,12 +87517,12 @@ [ [[link asio.reference.windows__basic_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -84400,7 +87612,15 @@ `` [''''»''' [link asio.reference.windows__basic_handle.basic_handle.overload2 more...]]`` -[section:overload1 windows::basic_handle::basic_handle (1 of 2 overloads)] +Move-construct a [link asio.reference.windows__basic_handle `windows::basic_handle`] from another. + + + ``[link asio.reference.windows__basic_handle.basic_handle.overload3 basic_handle]``( + basic_handle && other); + `` [''''»''' [link asio.reference.windows__basic_handle.basic_handle.overload3 more...]]`` + + +[section:overload1 windows::basic_handle::basic_handle (1 of 3 overloads)] Construct a [link asio.reference.windows__basic_handle `windows::basic_handle`] without opening it. @@ -84429,7 +87649,7 @@ -[section:overload2 windows::basic_handle::basic_handle (2 of 2 overloads)] +[section:overload2 windows::basic_handle::basic_handle (2 of 3 overloads)] Construct a [link asio.reference.windows__basic_handle `windows::basic_handle`] on an existing native handle. @@ -84470,6 +87690,45 @@ [endsect] + +[section:overload3 windows::basic_handle::basic_handle (3 of 3 overloads)] + + +Move-construct a [link asio.reference.windows__basic_handle `windows::basic_handle`] from another. + + + basic_handle( + basic_handle && other); + + +This constructor moves a handle from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.windows__basic_handle `windows::basic_handle`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:cancel windows::basic_handle::cancel] @@ -84616,6 +87875,54 @@ [endsect] +[section:get_implementation windows::basic_handle::get_implementation] + +[indexterm2 get_implementation..windows::basic_handle] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.windows__basic_handle.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.windows__basic_handle.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.windows__basic_handle.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.windows__basic_handle.get_implementation.overload2 more...]]`` + + +[section:overload1 windows::basic_handle::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 windows::basic_handle::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service windows::basic_handle::get_io_service] @@ -84642,6 +87949,54 @@ [endsect] +[section:get_service windows::basic_handle::get_service] + +[indexterm2 get_service..windows::basic_handle] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.windows__basic_handle.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.windows__basic_handle.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.windows__basic_handle.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.windows__basic_handle.get_service.overload2 more...]]`` + + +[section:overload1 windows::basic_handle::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 windows::basic_handle::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation windows::basic_handle::implementation] @@ -84649,7 +88004,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..windows::basic_handle] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -84825,7 +88180,9 @@ [[link asio.reference.windows__basic_handle.basic_handle [*basic_handle]]] [Construct a basic_handle without opening it. - Construct a basic_handle on an existing native handle. ] + Construct a basic_handle on an existing native handle. + + Move-construct a basic_handle from another. ] ] [ @@ -84865,6 +88222,11 @@ [Get the native handle representation. ] ] + [ + [[link asio.reference.windows__basic_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_handle from another. ] + ] + ] [heading Protected Member Functions] @@ -84872,6 +88234,16 @@ [[Name][Description]] [ + [[link asio.reference.windows__basic_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.windows__basic_handle._basic_handle [*~basic_handle]]] [Protected destructor to prevent deletion through this type. ] ] @@ -84884,12 +88256,12 @@ [ [[link asio.reference.windows__basic_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -84991,19 +88363,65 @@ +[section:operator_eq_ windows::basic_handle::operator=] + +[indexterm2 operator=..windows::basic_handle] +Move-assign a [link asio.reference.windows__basic_handle `windows::basic_handle`] from another. + + + basic_handle & operator=( + basic_handle && other); + + +This assignment operator moves a handle from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.windows__basic_handle `windows::basic_handle`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + + [section:service windows::basic_handle::service] ['Inherited from basic_io_object.] [indexterm2 service..windows::basic_handle] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -85124,7 +88542,9 @@ [[link asio.reference.windows__basic_random_access_handle.basic_random_access_handle [*basic_random_access_handle]]] [Construct a basic_random_access_handle without opening it. - Construct a basic_random_access_handle on an existing native handle. ] + Construct a basic_random_access_handle on an existing native handle. + + Move-construct a basic_random_access_handle from another. ] ] [ @@ -85165,6 +88585,11 @@ ] [ + [[link asio.reference.windows__basic_random_access_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_random_access_handle from another. ] + ] + + [ [[link asio.reference.windows__basic_random_access_handle.read_some_at [*read_some_at]]] [Read some data from the handle at the specified offset. ] ] @@ -85176,18 +88601,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.windows__basic_random_access_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_random_access_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.windows__basic_random_access_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_random_access_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -85403,7 +88844,15 @@ `` [''''»''' [link asio.reference.windows__basic_random_access_handle.basic_random_access_handle.overload2 more...]]`` -[section:overload1 windows::basic_random_access_handle::basic_random_access_handle (1 of 2 overloads)] +Move-construct a [link asio.reference.windows__basic_random_access_handle `windows::basic_random_access_handle`] from another. + + + ``[link asio.reference.windows__basic_random_access_handle.basic_random_access_handle.overload3 basic_random_access_handle]``( + basic_random_access_handle && other); + `` [''''»''' [link asio.reference.windows__basic_random_access_handle.basic_random_access_handle.overload3 more...]]`` + + +[section:overload1 windows::basic_random_access_handle::basic_random_access_handle (1 of 3 overloads)] Construct a [link asio.reference.windows__basic_random_access_handle `windows::basic_random_access_handle`] without opening it. @@ -85432,7 +88881,7 @@ -[section:overload2 windows::basic_random_access_handle::basic_random_access_handle (2 of 2 overloads)] +[section:overload2 windows::basic_random_access_handle::basic_random_access_handle (2 of 3 overloads)] Construct a [link asio.reference.windows__basic_random_access_handle `windows::basic_random_access_handle`] on an existing native handle. @@ -85473,6 +88922,45 @@ [endsect] + +[section:overload3 windows::basic_random_access_handle::basic_random_access_handle (3 of 3 overloads)] + + +Move-construct a [link asio.reference.windows__basic_random_access_handle `windows::basic_random_access_handle`] from another. + + + basic_random_access_handle( + basic_random_access_handle && other); + + +This constructor moves a random-access handle from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.windows__basic_random_access_handle `windows::basic_random_access_handle`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:cancel windows::basic_random_access_handle::cancel] @@ -85631,6 +89119,54 @@ [endsect] +[section:get_implementation windows::basic_random_access_handle::get_implementation] + +[indexterm2 get_implementation..windows::basic_random_access_handle] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.windows__basic_random_access_handle.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.windows__basic_random_access_handle.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.windows__basic_random_access_handle.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.windows__basic_random_access_handle.get_implementation.overload2 more...]]`` + + +[section:overload1 windows::basic_random_access_handle::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 windows::basic_random_access_handle::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service windows::basic_random_access_handle::get_io_service] @@ -85657,6 +89193,54 @@ [endsect] +[section:get_service windows::basic_random_access_handle::get_service] + +[indexterm2 get_service..windows::basic_random_access_handle] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.windows__basic_random_access_handle.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.windows__basic_random_access_handle.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.windows__basic_random_access_handle.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.windows__basic_random_access_handle.get_service.overload2 more...]]`` + + +[section:overload1 windows::basic_random_access_handle::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 windows::basic_random_access_handle::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation windows::basic_random_access_handle::implementation] @@ -85664,7 +89248,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..windows::basic_random_access_handle] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -85852,7 +89436,9 @@ [[link asio.reference.windows__basic_handle.basic_handle [*basic_handle]]] [Construct a basic_handle without opening it. - Construct a basic_handle on an existing native handle. ] + Construct a basic_handle on an existing native handle. + + Move-construct a basic_handle from another. ] ] [ @@ -85892,6 +89478,11 @@ [Get the native handle representation. ] ] + [ + [[link asio.reference.windows__basic_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_handle from another. ] + ] + ] [heading Protected Member Functions] @@ -85899,6 +89490,16 @@ [[Name][Description]] [ + [[link asio.reference.windows__basic_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.windows__basic_handle._basic_handle [*~basic_handle]]] [Protected destructor to prevent deletion through this type. ] ] @@ -85911,12 +89512,12 @@ [ [[link asio.reference.windows__basic_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -86023,6 +89624,45 @@ [endsect] + +[section:operator_eq_ windows::basic_random_access_handle::operator=] + +[indexterm2 operator=..windows::basic_random_access_handle] +Move-assign a [link asio.reference.windows__basic_random_access_handle `windows::basic_random_access_handle`] from another. + + + basic_random_access_handle & operator=( + basic_random_access_handle && other); + + +This assignment operator moves a random-access handle from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.windows__basic_random_access_handle `windows::basic_random_access_handle`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [section:read_some_at windows::basic_random_access_handle::read_some_at] [indexterm2 read_some_at..windows::basic_random_access_handle] @@ -86164,13 +89804,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..windows::basic_random_access_handle] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -86411,7 +90058,9 @@ [[link asio.reference.windows__basic_stream_handle.basic_stream_handle [*basic_stream_handle]]] [Construct a basic_stream_handle without opening it. - Construct a basic_stream_handle on an existing native handle. ] + Construct a basic_stream_handle on an existing native handle. + + Move-construct a basic_stream_handle from another. ] ] [ @@ -86452,6 +90101,11 @@ ] [ + [[link asio.reference.windows__basic_stream_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_stream_handle from another. ] + ] + + [ [[link asio.reference.windows__basic_stream_handle.read_some [*read_some]]] [Read some data from the handle. ] ] @@ -86463,18 +90117,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.windows__basic_stream_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_stream_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.windows__basic_stream_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_stream_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -86685,7 +90355,15 @@ `` [''''»''' [link asio.reference.windows__basic_stream_handle.basic_stream_handle.overload2 more...]]`` -[section:overload1 windows::basic_stream_handle::basic_stream_handle (1 of 2 overloads)] +Move-construct a [link asio.reference.windows__basic_stream_handle `windows::basic_stream_handle`] from another. + + + ``[link asio.reference.windows__basic_stream_handle.basic_stream_handle.overload3 basic_stream_handle]``( + basic_stream_handle && other); + `` [''''»''' [link asio.reference.windows__basic_stream_handle.basic_stream_handle.overload3 more...]]`` + + +[section:overload1 windows::basic_stream_handle::basic_stream_handle (1 of 3 overloads)] Construct a [link asio.reference.windows__basic_stream_handle `windows::basic_stream_handle`] without opening it. @@ -86714,7 +90392,7 @@ -[section:overload2 windows::basic_stream_handle::basic_stream_handle (2 of 2 overloads)] +[section:overload2 windows::basic_stream_handle::basic_stream_handle (2 of 3 overloads)] Construct a [link asio.reference.windows__basic_stream_handle `windows::basic_stream_handle`] on an existing native handle. @@ -86755,6 +90433,45 @@ [endsect] + +[section:overload3 windows::basic_stream_handle::basic_stream_handle (3 of 3 overloads)] + + +Move-construct a [link asio.reference.windows__basic_stream_handle `windows::basic_stream_handle`] from another. + + + basic_stream_handle( + basic_stream_handle && other); + + +This constructor moves a stream handle from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.windows__basic_stream_handle `windows::basic_stream_handle`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [endsect] [section:cancel windows::basic_stream_handle::cancel] @@ -86913,6 +90630,54 @@ [endsect] +[section:get_implementation windows::basic_stream_handle::get_implementation] + +[indexterm2 get_implementation..windows::basic_stream_handle] +Get the underlying implementation of the I/O object. + + + implementation_type & ``[link asio.reference.windows__basic_stream_handle.get_implementation.overload1 get_implementation]``(); + `` [''''»''' [link asio.reference.windows__basic_stream_handle.get_implementation.overload1 more...]]`` + + const implementation_type & ``[link asio.reference.windows__basic_stream_handle.get_implementation.overload2 get_implementation]``() const; + `` [''''»''' [link asio.reference.windows__basic_stream_handle.get_implementation.overload2 more...]]`` + + +[section:overload1 windows::basic_stream_handle::get_implementation (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + implementation_type & get_implementation(); + + + +[endsect] + + + +[section:overload2 windows::basic_stream_handle::get_implementation (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the underlying implementation of the I/O object. + + + const implementation_type & get_implementation() const; + + + +[endsect] + + +[endsect] + [section:get_io_service windows::basic_stream_handle::get_io_service] @@ -86939,6 +90704,54 @@ [endsect] +[section:get_service windows::basic_stream_handle::get_service] + +[indexterm2 get_service..windows::basic_stream_handle] +Get the service associated with the I/O object. + + + service_type & ``[link asio.reference.windows__basic_stream_handle.get_service.overload1 get_service]``(); + `` [''''»''' [link asio.reference.windows__basic_stream_handle.get_service.overload1 more...]]`` + + const service_type & ``[link asio.reference.windows__basic_stream_handle.get_service.overload2 get_service]``() const; + `` [''''»''' [link asio.reference.windows__basic_stream_handle.get_service.overload2 more...]]`` + + +[section:overload1 windows::basic_stream_handle::get_service (1 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + service_type & get_service(); + + + +[endsect] + + + +[section:overload2 windows::basic_stream_handle::get_service (2 of 2 overloads)] + + +['Inherited from basic_io_object.] + + +Get the service associated with the I/O object. + + + const service_type & get_service() const; + + + +[endsect] + + +[endsect] + [section:implementation windows::basic_stream_handle::implementation] @@ -86946,7 +90759,7 @@ ['Inherited from basic_io_object.] [indexterm2 implementation..windows::basic_stream_handle] -The underlying implementation of the I/O object. +(Deprecated: Use `get_implementation()`.) The underlying implementation of the I/O object. implementation_type implementation; @@ -87134,7 +90947,9 @@ [[link asio.reference.windows__basic_handle.basic_handle [*basic_handle]]] [Construct a basic_handle without opening it. - Construct a basic_handle on an existing native handle. ] + Construct a basic_handle on an existing native handle. + + Move-construct a basic_handle from another. ] ] [ @@ -87174,6 +90989,11 @@ [Get the native handle representation. ] ] + [ + [[link asio.reference.windows__basic_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_handle from another. ] + ] + ] [heading Protected Member Functions] @@ -87181,6 +91001,16 @@ [[Name][Description]] [ + [[link asio.reference.windows__basic_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + + [ [[link asio.reference.windows__basic_handle._basic_handle [*~basic_handle]]] [Protected destructor to prevent deletion through this type. ] ] @@ -87193,12 +91023,12 @@ [ [[link asio.reference.windows__basic_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -87305,6 +91135,45 @@ [endsect] + +[section:operator_eq_ windows::basic_stream_handle::operator=] + +[indexterm2 operator=..windows::basic_stream_handle] +Move-assign a [link asio.reference.windows__basic_stream_handle `windows::basic_stream_handle`] from another. + + + basic_stream_handle & operator=( + basic_stream_handle && other); + + +This assignment operator moves a stream handle from one object to another. + + +[heading Parameters] + + +[variablelist + +[[other][The other [link asio.reference.windows__basic_stream_handle `windows::basic_stream_handle`] object from which the move will occur.]] + +] + + +[heading Remarks] + +Following the move, the valid operations for the other object are: +* Using it as the target of a move assignment. + +* Destruction. + + + + + + +[endsect] + + [section:read_some windows::basic_stream_handle::read_some] [indexterm2 read_some..windows::basic_stream_handle] @@ -87438,13 +91307,20 @@ ['Inherited from basic_io_object.] [indexterm2 service..windows::basic_stream_handle] -The service associated with the I/O object. +(Deprecated: Use `get_service()`.) The service associated with the I/O object. service_type & service; +[heading Remarks] + +Available only for services that do not support movability. + + + + [endsect] @@ -87939,7 +91815,9 @@ [[link asio.reference.windows__basic_random_access_handle.basic_random_access_handle [*basic_random_access_handle]]] [Construct a basic_random_access_handle without opening it. - Construct a basic_random_access_handle on an existing native handle. ] + Construct a basic_random_access_handle on an existing native handle. + + Move-construct a basic_random_access_handle from another. ] ] [ @@ -87980,6 +91858,11 @@ ] [ + [[link asio.reference.windows__basic_random_access_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_random_access_handle from another. ] + ] + + [ [[link asio.reference.windows__basic_random_access_handle.read_some_at [*read_some_at]]] [Read some data from the handle at the specified offset. ] ] @@ -87991,18 +91874,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.windows__basic_random_access_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_random_access_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.windows__basic_random_access_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_random_access_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -88116,6 +92015,16 @@ ] [ + [[link asio.reference.windows__random_access_handle_service.move_assign [*move_assign]]] + [Move-assign from another random-access handle implementation. ] + ] + + [ + [[link asio.reference.windows__random_access_handle_service.move_construct [*move_construct]]] + [Move-construct a new random-access handle implementation. ] + ] + + [ [[link asio.reference.windows__random_access_handle_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native handle implementation. ] ] @@ -88136,11 +92045,6 @@ ] [ - [[link asio.reference.windows__random_access_handle_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.windows__random_access_handle_service.write_some_at [*write_some_at]]] [Write the given data at the specified offset. ] ] @@ -88353,6 +92257,39 @@ +[section:move_assign windows::random_access_handle_service::move_assign] + +[indexterm2 move_assign..windows::random_access_handle_service] +Move-assign from another random-access handle implementation. + + + void move_assign( + implementation_type & impl, + random_access_handle_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct windows::random_access_handle_service::move_construct] + +[indexterm2 move_construct..windows::random_access_handle_service] +Move-construct a new random-access handle implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native windows::random_access_handle_service::native] [indexterm2 native..windows::random_access_handle_service] @@ -88460,20 +92397,6 @@ -[section:shutdown_service windows::random_access_handle_service::shutdown_service] - -[indexterm2 shutdown_service..windows::random_access_handle_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:write_some_at windows::random_access_handle_service::write_some_at] [indexterm2 write_some_at..windows::random_access_handle_service] @@ -88570,7 +92493,9 @@ [[link asio.reference.windows__basic_stream_handle.basic_stream_handle [*basic_stream_handle]]] [Construct a basic_stream_handle without opening it. - Construct a basic_stream_handle on an existing native handle. ] + Construct a basic_stream_handle on an existing native handle. + + Move-construct a basic_stream_handle from another. ] ] [ @@ -88611,6 +92536,11 @@ ] [ + [[link asio.reference.windows__basic_stream_handle.operator_eq_ [*operator=]]] + [Move-assign a basic_stream_handle from another. ] + ] + + [ [[link asio.reference.windows__basic_stream_handle.read_some [*read_some]]] [Read some data from the handle. ] ] @@ -88622,18 +92552,34 @@ ] +[heading Protected Member Functions] +[table + [[Name][Description]] + + [ + [[link asio.reference.windows__basic_stream_handle.get_implementation [*get_implementation]]] + [Get the underlying implementation of the I/O object. ] + ] + + [ + [[link asio.reference.windows__basic_stream_handle.get_service [*get_service]]] + [Get the service associated with the I/O object. ] + ] + +] + [heading Protected Data Members] [table [[Name][Description]] [ [[link asio.reference.windows__basic_stream_handle.implementation [*implementation]]] - [The underlying implementation of the I/O object. ] + [(Deprecated: Use get_implementation().) The underlying implementation of the I/O object. ] ] [ [[link asio.reference.windows__basic_stream_handle.service [*service]]] - [The service associated with the I/O object. ] + [(Deprecated: Use get_service().) The service associated with the I/O object. ] ] ] @@ -88748,6 +92694,16 @@ ] [ + [[link asio.reference.windows__stream_handle_service.move_assign [*move_assign]]] + [Move-assign from another stream handle implementation. ] + ] + + [ + [[link asio.reference.windows__stream_handle_service.move_construct [*move_construct]]] + [Move-construct a new stream handle implementation. ] + ] + + [ [[link asio.reference.windows__stream_handle_service.native [*native]]] [(Deprecated: Use native_handle().) Get the native handle implementation. ] ] @@ -88763,11 +92719,6 @@ ] [ - [[link asio.reference.windows__stream_handle_service.shutdown_service [*shutdown_service]]] - [Destroy all user-defined handler objects owned by the service. ] - ] - - [ [[link asio.reference.windows__stream_handle_service.stream_handle_service [*stream_handle_service]]] [Construct a new stream handle service for the specified io_service. ] ] @@ -88983,6 +92934,39 @@ +[section:move_assign windows::stream_handle_service::move_assign] + +[indexterm2 move_assign..windows::stream_handle_service] +Move-assign from another stream handle implementation. + + + void move_assign( + implementation_type & impl, + stream_handle_service & other_service, + implementation_type & other_impl); + + + +[endsect] + + + +[section:move_construct windows::stream_handle_service::move_construct] + +[indexterm2 move_construct..windows::stream_handle_service] +Move-construct a new stream handle implementation. + + + void move_construct( + implementation_type & impl, + implementation_type & other_impl); + + + +[endsect] + + + [section:native windows::stream_handle_service::native] [indexterm2 native..windows::stream_handle_service] @@ -89074,20 +93058,6 @@ -[section:shutdown_service windows::stream_handle_service::shutdown_service] - -[indexterm2 shutdown_service..windows::stream_handle_service] -Destroy all user-defined handler objects owned by the service. - - - virtual void shutdown_service(); - - - -[endsect] - - - [section:stream_handle_service windows::stream_handle_service::stream_handle_service] [indexterm2 stream_handle_service..windows::stream_handle_service]