From 5f9639bc1bcc5be37652a5aea4b985a7f14697c4 Mon Sep 17 00:00:00 2001 From: Christopher Kohlhoff Date: Fri, 22 May 2015 09:28:52 +1000 Subject: [PATCH] Mark buffer functions with noexcept. --- asio/include/asio/buffer.hpp | 229 +++++++++++++++++++---------------- 1 file changed, 127 insertions(+), 102 deletions(-) diff --git a/asio/include/asio/buffer.hpp b/asio/include/asio/buffer.hpp index 215b3dc2..9222daaa 100644 --- a/asio/include/asio/buffer.hpp +++ b/asio/include/asio/buffer.hpp @@ -90,14 +90,14 @@ class mutable_buffer { public: /// Construct an empty buffer. - mutable_buffer() + mutable_buffer() ASIO_NOEXCEPT : data_(0), size_(0) { } /// Construct a buffer to represent a given memory range. - mutable_buffer(void* data, std::size_t size) + mutable_buffer(void* data, std::size_t size) ASIO_NOEXCEPT : data_(data), size_(size) { @@ -119,7 +119,7 @@ public: #endif // ASIO_ENABLE_BUFFER_DEBUGGING /// Get a pointer to the beginning of the memory range. - void* data() const + void* data() const ASIO_NOEXCEPT { #if defined(ASIO_ENABLE_BUFFER_DEBUGGING) if (size_ && debug_check_) @@ -129,7 +129,7 @@ public: } /// Get the size of the memory range. - std::size_t size() const + std::size_t size() const ASIO_NOEXCEPT { return size_; } @@ -156,25 +156,25 @@ public: typedef const mutable_buffer* const_iterator; /// Construct to represent a given memory range. - mutable_buffers_1(void* data, std::size_t size) + mutable_buffers_1(void* data, std::size_t size) ASIO_NOEXCEPT : mutable_buffer(data, size) { } /// Construct to represent a single modifiable buffer. - explicit mutable_buffers_1(const mutable_buffer& b) + explicit mutable_buffers_1(const mutable_buffer& b) ASIO_NOEXCEPT : mutable_buffer(b) { } /// Get a random-access iterator to the first element. - const_iterator begin() const + const_iterator begin() const ASIO_NOEXCEPT { return this; } /// Get a random-access iterator for one past the last element. - const_iterator end() const + const_iterator end() const ASIO_NOEXCEPT { return begin() + 1; } @@ -203,21 +203,21 @@ class const_buffer { public: /// Construct an empty buffer. - const_buffer() + const_buffer() ASIO_NOEXCEPT : data_(0), size_(0) { } /// Construct a buffer to represent a given memory range. - const_buffer(const void* data, std::size_t size) + const_buffer(const void* data, std::size_t size) ASIO_NOEXCEPT : data_(data), size_(size) { } /// Construct a non-modifiable buffer from a modifiable one. - const_buffer(const mutable_buffer& b) + const_buffer(const mutable_buffer& b) ASIO_NOEXCEPT : data_(b.data()), size_(b.size()) #if defined(ASIO_ENABLE_BUFFER_DEBUGGING) @@ -242,7 +242,7 @@ public: #endif // ASIO_ENABLE_BUFFER_DEBUGGING /// Get a pointer to the beginning of the memory range. - const void* data() const + const void* data() const ASIO_NOEXCEPT { #if defined(ASIO_ENABLE_BUFFER_DEBUGGING) if (size_ && debug_check_) @@ -252,7 +252,7 @@ public: } /// Get the size of the memory range. - std::size_t size() const + std::size_t size() const ASIO_NOEXCEPT { return size_; } @@ -279,25 +279,25 @@ public: typedef const const_buffer* const_iterator; /// Construct to represent a given memory range. - const_buffers_1(const void* data, std::size_t size) + const_buffers_1(const void* data, std::size_t size) ASIO_NOEXCEPT : const_buffer(data, size) { } /// Construct to represent a single non-modifiable buffer. - explicit const_buffers_1(const const_buffer& b) + explicit const_buffers_1(const const_buffer& b) ASIO_NOEXCEPT : const_buffer(b) { } /// Get a random-access iterator to the first element. - const_iterator begin() const + const_iterator begin() const ASIO_NOEXCEPT { return this; } /// Get a random-access iterator for one past the last element. - const_iterator end() const + const_iterator end() const ASIO_NOEXCEPT { return begin() + 1; } @@ -352,13 +352,13 @@ public: typedef const mutable_buffer* const_iterator; /// Get a random-access iterator to the first element. - const_iterator begin() const + const_iterator begin() const ASIO_NOEXCEPT { return &buf_; } /// Get a random-access iterator for one past the last element. - const_iterator end() const + const_iterator end() const ASIO_NOEXCEPT { return &buf_; } @@ -375,25 +375,25 @@ private: /*@{*/ /// Get the number of bytes in a modifiable buffer. -inline std::size_t buffer_size(const mutable_buffer& b) +inline std::size_t buffer_size(const mutable_buffer& b) ASIO_NOEXCEPT { return b.size(); } /// Get the number of bytes in a modifiable buffer. -inline std::size_t buffer_size(const mutable_buffers_1& b) +inline std::size_t buffer_size(const mutable_buffers_1& b) ASIO_NOEXCEPT { return b.size(); } /// Get the number of bytes in a non-modifiable buffer. -inline std::size_t buffer_size(const const_buffer& b) +inline std::size_t buffer_size(const const_buffer& b) ASIO_NOEXCEPT { return b.size(); } /// Get the number of bytes in a non-modifiable buffer. -inline std::size_t buffer_size(const const_buffers_1& b) +inline std::size_t buffer_size(const const_buffers_1& b) ASIO_NOEXCEPT { return b.size(); } @@ -407,7 +407,7 @@ template inline std::size_t buffer_size(const BufferSequence& b, typename enable_if< is_const_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { std::size_t total_buffer_size = 0; @@ -426,8 +426,8 @@ inline std::size_t buffer_size(const BufferSequence& b, /** @defgroup buffer_cast asio::buffer_cast * * @brief (Deprecated: Use the @c data() member function.) The - * asio::buffer_cast function is used to obtain a pointer to the underlying - * memory region associated with a buffer. + * asio::buffer_cast function is used to obtain a pointer to the + * underlying memory region associated with a buffer. * * @par Examples: * @@ -448,14 +448,14 @@ inline std::size_t buffer_size(const BufferSequence& b, /// Cast a non-modifiable buffer to a specified pointer to POD type. template -inline PointerToPodType buffer_cast(const mutable_buffer& b) +inline PointerToPodType buffer_cast(const mutable_buffer& b) ASIO_NOEXCEPT { return static_cast(b.data()); } /// Cast a non-modifiable buffer to a specified pointer to POD type. template -inline PointerToPodType buffer_cast(const const_buffer& b) +inline PointerToPodType buffer_cast(const const_buffer& b) ASIO_NOEXCEPT { return static_cast(b.data()); } @@ -468,7 +468,8 @@ inline PointerToPodType buffer_cast(const const_buffer& b) /** * @relates mutable_buffer */ -inline mutable_buffer operator+(const mutable_buffer& b, std::size_t start) +inline mutable_buffer operator+(const mutable_buffer& b, + std::size_t start) ASIO_NOEXCEPT { if (start > b.size()) return mutable_buffer(); @@ -485,7 +486,8 @@ inline mutable_buffer operator+(const mutable_buffer& b, std::size_t start) /** * @relates mutable_buffer */ -inline mutable_buffer operator+(std::size_t start, const mutable_buffer& b) +inline mutable_buffer operator+(std::size_t start, + const mutable_buffer& b) ASIO_NOEXCEPT { return b + start; } @@ -494,7 +496,8 @@ inline mutable_buffer operator+(std::size_t start, const mutable_buffer& b) /** * @relates const_buffer */ -inline const_buffer operator+(const const_buffer& b, std::size_t start) +inline const_buffer operator+(const const_buffer& b, + std::size_t start) ASIO_NOEXCEPT { if (start > b.size()) return const_buffer(); @@ -511,7 +514,8 @@ inline const_buffer operator+(const const_buffer& b, std::size_t start) /** * @relates const_buffer */ -inline const_buffer operator+(std::size_t start, const const_buffer& b) +inline const_buffer operator+(std::size_t start, + const const_buffer& b) ASIO_NOEXCEPT { return b + start; } @@ -716,7 +720,7 @@ private: /** * @returns mutable_buffers_1(b). */ -inline mutable_buffers_1 buffer(const mutable_buffer& b) +inline mutable_buffers_1 buffer(const mutable_buffer& b) ASIO_NOEXCEPT { return mutable_buffers_1(b); } @@ -729,7 +733,7 @@ inline mutable_buffers_1 buffer(const mutable_buffer& b) * min(b.size(), max_size_in_bytes)); @endcode */ inline mutable_buffers_1 buffer(const mutable_buffer& b, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(b.data(), @@ -745,7 +749,7 @@ inline mutable_buffers_1 buffer(const mutable_buffer& b, /** * @returns const_buffers_1(b). */ -inline const_buffers_1 buffer(const const_buffer& b) +inline const_buffers_1 buffer(const const_buffer& b) ASIO_NOEXCEPT { return const_buffers_1(b); } @@ -758,7 +762,7 @@ inline const_buffers_1 buffer(const const_buffer& b) * min(b.size(), max_size_in_bytes)); @endcode */ inline const_buffers_1 buffer(const const_buffer& b, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(b.data(), @@ -775,7 +779,7 @@ inline const_buffers_1 buffer(const const_buffer& b, * @returns mutable_buffers_1(data, size_in_bytes). */ inline mutable_buffers_1 buffer(void* data, - std::size_t size_in_bytes) + std::size_t size_in_bytes) ASIO_NOEXCEPT { return mutable_buffers_1(mutable_buffer(data, size_in_bytes)); } @@ -785,7 +789,7 @@ inline mutable_buffers_1 buffer(void* data, * @returns const_buffers_1(data, size_in_bytes). */ inline const_buffers_1 buffer(const void* data, - std::size_t size_in_bytes) + std::size_t size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1(const_buffer(data, size_in_bytes)); } @@ -798,7 +802,7 @@ inline const_buffers_1 buffer(const void* data, * N * sizeof(PodType)); @endcode */ template -inline mutable_buffers_1 buffer(PodType (&data)[N]) +inline mutable_buffers_1 buffer(PodType (&data)[N]) ASIO_NOEXCEPT { return mutable_buffers_1(mutable_buffer(data, N * sizeof(PodType))); } @@ -812,7 +816,7 @@ inline mutable_buffers_1 buffer(PodType (&data)[N]) */ template inline mutable_buffers_1 buffer(PodType (&data)[N], - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data, @@ -828,7 +832,7 @@ inline mutable_buffers_1 buffer(PodType (&data)[N], * N * sizeof(PodType)); @endcode */ template -inline const_buffers_1 buffer(const PodType (&data)[N]) +inline const_buffers_1 buffer(const PodType (&data)[N]) ASIO_NOEXCEPT { return const_buffers_1(const_buffer(data, N * sizeof(PodType))); } @@ -842,7 +846,7 @@ inline const_buffers_1 buffer(const PodType (&data)[N]) */ template inline const_buffers_1 buffer(const PodType (&data)[N], - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data, @@ -893,7 +897,7 @@ struct buffer_types template inline typename detail::buffer_types::container_type -buffer(boost::array& data) +buffer(boost::array& data) ASIO_NOEXCEPT { typedef typename asio::detail::buffer_types::buffer_type buffer_type; @@ -905,7 +909,8 @@ buffer(boost::array& data) template inline typename detail::buffer_types::container_type -buffer(boost::array& data, std::size_t max_size_in_bytes) +buffer(boost::array& data, + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { typedef typename asio::detail::buffer_types::buffer_type buffer_type; @@ -927,7 +932,8 @@ buffer(boost::array& data, std::size_t max_size_in_bytes) * data.size() * sizeof(PodType)); @endcode */ template -inline mutable_buffers_1 buffer(boost::array& data) +inline mutable_buffers_1 buffer( + boost::array& data) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data.c_array(), data.size() * sizeof(PodType))); @@ -942,7 +948,7 @@ inline mutable_buffers_1 buffer(boost::array& data) */ template inline mutable_buffers_1 buffer(boost::array& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data.c_array(), @@ -958,7 +964,8 @@ inline mutable_buffers_1 buffer(boost::array& data, * data.size() * sizeof(PodType)); @endcode */ template -inline const_buffers_1 buffer(boost::array& data) +inline const_buffers_1 buffer( + boost::array& data) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), data.size() * sizeof(PodType))); @@ -973,7 +980,7 @@ inline const_buffers_1 buffer(boost::array& data) */ template inline const_buffers_1 buffer(boost::array& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), @@ -991,7 +998,8 @@ inline const_buffers_1 buffer(boost::array& data, * data.size() * sizeof(PodType)); @endcode */ template -inline const_buffers_1 buffer(const boost::array& data) +inline const_buffers_1 buffer( + const boost::array& data) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), data.size() * sizeof(PodType))); @@ -1006,7 +1014,7 @@ inline const_buffers_1 buffer(const boost::array& data) */ template inline const_buffers_1 buffer(const boost::array& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), @@ -1024,7 +1032,8 @@ inline const_buffers_1 buffer(const boost::array& data, * data.size() * sizeof(PodType)); @endcode */ template -inline mutable_buffers_1 buffer(std::array& data) +inline mutable_buffers_1 buffer( + std::array& data) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data.data(), data.size() * sizeof(PodType))); @@ -1039,7 +1048,7 @@ inline mutable_buffers_1 buffer(std::array& data) */ template inline mutable_buffers_1 buffer(std::array& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data.data(), @@ -1055,7 +1064,8 @@ inline mutable_buffers_1 buffer(std::array& data, * data.size() * sizeof(PodType)); @endcode */ template -inline const_buffers_1 buffer(std::array& data) +inline const_buffers_1 buffer( + std::array& data) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), data.size() * sizeof(PodType))); @@ -1070,7 +1080,7 @@ inline const_buffers_1 buffer(std::array& data) */ template inline const_buffers_1 buffer(std::array& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), @@ -1086,7 +1096,8 @@ inline const_buffers_1 buffer(std::array& data, * data.size() * sizeof(PodType)); @endcode */ template -inline const_buffers_1 buffer(const std::array& data) +inline const_buffers_1 buffer( + const std::array& data) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), data.size() * sizeof(PodType))); @@ -1101,7 +1112,7 @@ inline const_buffers_1 buffer(const std::array& data) */ template inline const_buffers_1 buffer(const std::array& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), @@ -1122,7 +1133,8 @@ inline const_buffers_1 buffer(const std::array& data, * invalidate iterators. */ template -inline mutable_buffers_1 buffer(std::vector& data) +inline mutable_buffers_1 buffer( + std::vector& data) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data.size() ? &data[0] : 0, data.size() * sizeof(PodType) @@ -1146,7 +1158,7 @@ inline mutable_buffers_1 buffer(std::vector& data) */ template inline mutable_buffers_1 buffer(std::vector& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data.size() ? &data[0] : 0, @@ -1172,7 +1184,7 @@ inline mutable_buffers_1 buffer(std::vector& data, */ template inline const_buffers_1 buffer( - const std::vector& data) + const std::vector& data) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.size() ? &data[0] : 0, data.size() * sizeof(PodType) @@ -1196,7 +1208,8 @@ inline const_buffers_1 buffer( */ template inline const_buffers_1 buffer( - const std::vector& data, std::size_t max_size_in_bytes) + const std::vector& data, + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.size() ? &data[0] : 0, @@ -1220,7 +1233,7 @@ inline const_buffers_1 buffer( */ template inline mutable_buffers_1 buffer( - std::basic_string& data) + std::basic_string& data) ASIO_NOEXCEPT { return mutable_buffers_1(mutable_buffer(data.size() ? &data[0] : 0, data.size() * sizeof(Elem) @@ -1245,7 +1258,7 @@ inline mutable_buffers_1 buffer( template inline mutable_buffers_1 buffer( std::basic_string& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return mutable_buffers_1( mutable_buffer(data.size() ? &data[0] : 0, @@ -1268,7 +1281,7 @@ inline mutable_buffers_1 buffer( */ template inline const_buffers_1 buffer( - const std::basic_string& data) + const std::basic_string& data) ASIO_NOEXCEPT { return const_buffers_1(const_buffer(data.data(), data.size() * sizeof(Elem) #if defined(ASIO_ENABLE_BUFFER_DEBUGGING) @@ -1292,7 +1305,7 @@ inline const_buffers_1 buffer( template inline const_buffers_1 buffer( const std::basic_string& data, - std::size_t max_size_in_bytes) + std::size_t max_size_in_bytes) ASIO_NOEXCEPT { return const_buffers_1( const_buffer(data.data(), @@ -1333,7 +1346,8 @@ public: * @param maximum_size Specifies a maximum size for the buffer, in bytes. */ explicit dynamic_string_buffer(std::basic_string& s, - std::size_t maximum_size = (std::numeric_limits::max)()) + std::size_t maximum_size = + (std::numeric_limits::max)()) ASIO_NOEXCEPT : string_(s), size_(string_.size()), max_size_(maximum_size) @@ -1342,7 +1356,7 @@ public: #if defined(ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION) /// Move construct a dynamic buffer. - dynamic_string_buffer(dynamic_string_buffer&& other) + dynamic_string_buffer(dynamic_string_buffer&& other) ASIO_NOEXCEPT : string_(other.string_), size_(other.size_), max_size_(other.max_size_) @@ -1483,7 +1497,8 @@ public: * @param maximum_size Specifies a maximum size for the buffer, in bytes. */ explicit dynamic_vector_buffer(std::vector& v, - std::size_t maximum_size = (std::numeric_limits::max)()) + std::size_t maximum_size = + (std::numeric_limits::max)()) ASIO_NOEXCEPT : vector_(v), size_(vector_.size()), max_size_(maximum_size) @@ -1492,7 +1507,7 @@ public: #if defined(ASIO_HAS_MOVE) || defined(GENERATING_DOCUMENTATION) /// Move construct a dynamic buffer. - dynamic_vector_buffer(dynamic_vector_buffer&& other) + dynamic_vector_buffer(dynamic_vector_buffer&& other) ASIO_NOEXCEPT : vector_(other.vector_), size_(other.size_), max_size_(other.max_size_) @@ -1621,7 +1636,7 @@ private: */ template inline dynamic_string_buffer dynamic_buffer( - std::basic_string& data) + std::basic_string& data) ASIO_NOEXCEPT { return dynamic_string_buffer(data); } @@ -1633,7 +1648,8 @@ inline dynamic_string_buffer dynamic_buffer( */ template inline dynamic_string_buffer dynamic_buffer( - std::basic_string& data, std::size_t max_size) + std::basic_string& data, + std::size_t max_size) ASIO_NOEXCEPT { return dynamic_string_buffer(data, max_size); } @@ -1644,7 +1660,7 @@ inline dynamic_string_buffer dynamic_buffer( */ template inline dynamic_vector_buffer dynamic_buffer( - std::vector& data) + std::vector& data) ASIO_NOEXCEPT { return dynamic_vector_buffer(data); } @@ -1655,7 +1671,8 @@ inline dynamic_vector_buffer dynamic_buffer( */ template inline dynamic_vector_buffer dynamic_buffer( - std::vector& data, std::size_t max_size) + std::vector& data, + std::size_t max_size) ASIO_NOEXCEPT { return dynamic_vector_buffer(data, max_size); } @@ -1710,7 +1727,7 @@ inline dynamic_vector_buffer dynamic_buffer( * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const const_buffer& source) + const const_buffer& source) ASIO_NOEXCEPT { using namespace std; // For memcpy. std::size_t target_size = target.size(); @@ -1740,7 +1757,7 @@ inline std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const const_buffers_1& source) + const const_buffers_1& source) ASIO_NOEXCEPT { return buffer_copy(target, static_cast(source)); } @@ -1766,7 +1783,7 @@ inline std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const mutable_buffer& source) + const mutable_buffer& source) ASIO_NOEXCEPT { return buffer_copy(target, const_buffer(source)); } @@ -1792,7 +1809,7 @@ inline std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const mutable_buffers_1& source) + const mutable_buffers_1& source) ASIO_NOEXCEPT { return buffer_copy(target, const_buffer(source)); } @@ -1821,7 +1838,7 @@ std::size_t buffer_copy(const mutable_buffer& target, const ConstBufferSequence& source, typename enable_if< is_const_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { std::size_t total_bytes_copied = 0; @@ -1860,7 +1877,7 @@ std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const const_buffer& source) + const const_buffer& source) ASIO_NOEXCEPT { return buffer_copy(static_cast(target), source); } @@ -1885,7 +1902,7 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const const_buffers_1& source) + const const_buffers_1& source) ASIO_NOEXCEPT { return buffer_copy(static_cast(target), static_cast(source)); @@ -1912,7 +1929,7 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const mutable_buffer& source) + const mutable_buffer& source) ASIO_NOEXCEPT { return buffer_copy(static_cast(target), const_buffer(source)); @@ -1939,7 +1956,7 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const mutable_buffers_1& source) + const mutable_buffers_1& source) ASIO_NOEXCEPT { return buffer_copy(static_cast(target), const_buffer(source)); @@ -1969,7 +1986,7 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, const ConstBufferSequence& source, typename enable_if< is_const_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(static_cast(target), source); } @@ -1998,7 +2015,7 @@ std::size_t buffer_copy(const MutableBufferSequence& target, const const_buffer& source, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { std::size_t total_bytes_copied = 0; @@ -2041,7 +2058,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target, const const_buffers_1& source, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(target, static_cast(source)); } @@ -2071,7 +2088,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target, const mutable_buffer& source, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(target, const_buffer(source)); } @@ -2101,7 +2118,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target, const mutable_buffers_1& source, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(target, const_buffer(source)); } @@ -2131,7 +2148,7 @@ std::size_t buffer_copy(const MutableBufferSequence& target, typename enable_if< is_mutable_buffer_sequence::value && is_const_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { std::size_t total_bytes_copied = 0; @@ -2198,7 +2215,8 @@ std::size_t buffer_copy(const MutableBufferSequence& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const const_buffer& source, std::size_t max_bytes_to_copy) + const const_buffer& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2227,7 +2245,8 @@ inline std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const const_buffers_1& source, std::size_t max_bytes_to_copy) + const const_buffers_1& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2257,7 +2276,8 @@ inline std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const mutable_buffer& source, std::size_t max_bytes_to_copy) + const mutable_buffer& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2287,7 +2307,8 @@ inline std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffer& target, - const mutable_buffers_1& source, std::size_t max_bytes_to_copy) + const mutable_buffers_1& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2321,7 +2342,7 @@ inline std::size_t buffer_copy(const mutable_buffer& target, const ConstBufferSequence& source, std::size_t max_bytes_to_copy, typename enable_if< is_const_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2350,7 +2371,8 @@ inline std::size_t buffer_copy(const mutable_buffer& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const const_buffer& source, std::size_t max_bytes_to_copy) + const const_buffer& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2379,7 +2401,8 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const const_buffers_1& source, std::size_t max_bytes_to_copy) + const const_buffers_1& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2409,7 +2432,8 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const mutable_buffer& source, std::size_t max_bytes_to_copy) + const mutable_buffer& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2439,7 +2463,8 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, * cannot be used to copy between overlapping memory regions. */ inline std::size_t buffer_copy(const mutable_buffers_1& target, - const mutable_buffers_1& source, std::size_t max_bytes_to_copy) + const mutable_buffers_1& source, + std::size_t max_bytes_to_copy) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2473,7 +2498,7 @@ inline std::size_t buffer_copy(const mutable_buffers_1& target, const ConstBufferSequence& source, std::size_t max_bytes_to_copy, typename enable_if< is_const_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(buffer(target, max_bytes_to_copy), source); } @@ -2507,7 +2532,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target, const const_buffer& source, std::size_t max_bytes_to_copy, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(target, buffer(source, max_bytes_to_copy)); } @@ -2541,7 +2566,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target, const const_buffers_1& source, std::size_t max_bytes_to_copy, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(target, buffer(source, max_bytes_to_copy)); } @@ -2576,7 +2601,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target, const mutable_buffer& source, std::size_t max_bytes_to_copy, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(target, buffer(source, max_bytes_to_copy)); } @@ -2611,7 +2636,7 @@ inline std::size_t buffer_copy(const MutableBufferSequence& target, const mutable_buffers_1& source, std::size_t max_bytes_to_copy, typename enable_if< is_mutable_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { return buffer_copy(target, buffer(source, max_bytes_to_copy)); } @@ -2646,7 +2671,7 @@ std::size_t buffer_copy(const MutableBufferSequence& target, typename enable_if< is_mutable_buffer_sequence::value && is_const_buffer_sequence::value - >::type* = 0) + >::type* = 0) ASIO_NOEXCEPT { std::size_t total_bytes_copied = 0;