diff options
author | Tobias Markmann <tm@ayena.de> | 2014-10-19 20:22:58 (GMT) |
---|---|---|
committer | Tobias Markmann <tm@ayena.de> | 2014-10-20 13:49:33 (GMT) |
commit | 6b22dfcf59474dd016a0355a3102a1dd3692d92c (patch) | |
tree | 2b1fd33be433a91e81fee84fdc2bf1b52575d934 /3rdParty/Boost/src/boost/asio/write_at.hpp | |
parent | 38b0cb785fea8eae5e48fae56440695fdfd10ee1 (diff) | |
download | swift-6b22dfcf59474dd016a0355a3102a1dd3692d92c.zip swift-6b22dfcf59474dd016a0355a3102a1dd3692d92c.tar.bz2 |
Update Boost in 3rdParty to version 1.56.0.
This updates Boost in our 3rdParty directory to version 1.56.0.
Updated our update.sh script to stop on error.
Changed error reporting in SwiftTools/CrashReporter.cpp to SWIFT_LOG due to
missing include of <iostream> with newer Boost.
Change-Id: I4b35c77de951333979a524097f35f5f83d325edc
Diffstat (limited to '3rdParty/Boost/src/boost/asio/write_at.hpp')
-rw-r--r-- | 3rdParty/Boost/src/boost/asio/write_at.hpp | 75 |
1 files changed, 52 insertions, 23 deletions
diff --git a/3rdParty/Boost/src/boost/asio/write_at.hpp b/3rdParty/Boost/src/boost/asio/write_at.hpp index 9535a55..6df000c 100644 --- a/3rdParty/Boost/src/boost/asio/write_at.hpp +++ b/3rdParty/Boost/src/boost/asio/write_at.hpp @@ -1,11 +1,11 @@ // // write_at.hpp // ~~~~~~~~~~~~ // -// Copyright (c) 2003-2012 Christopher M. Kohlhoff (chris at kohlhoff dot com) +// Copyright (c) 2003-2014 Christopher M. Kohlhoff (chris at kohlhoff dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // #ifndef BOOST_ASIO_WRITE_AT_HPP @@ -14,14 +14,15 @@ #if defined(_MSC_VER) && (_MSC_VER >= 1200) # pragma once #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) #include <boost/asio/detail/config.hpp> #include <cstddef> -#include <boost/cstdint.hpp> +#include <boost/asio/async_result.hpp> #include <boost/asio/basic_streambuf_fwd.hpp> +#include <boost/asio/detail/cstdint.hpp> #include <boost/asio/error.hpp> #include <boost/asio/detail/push_options.hpp> namespace boost { namespace asio { @@ -71,13 +72,13 @@ namespace asio { * @code boost::asio::write_at( * d, offset, buffers, * boost::asio::transfer_all()); @endcode */ template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence> std::size_t write_at(SyncRandomAccessWriteDevice& d, - boost::uint64_t offset, const ConstBufferSequence& buffers); + uint64_t offset, const ConstBufferSequence& buffers); /// Write all of the supplied data at the specified offset before returning. /** * This function is used to write a certain number of bytes of data to a random * access device at a specified offset. The call will block until one of the * following conditions is true: @@ -115,13 +116,13 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, * @code boost::asio::write_at( * d, offset, buffers, * boost::asio::transfer_all(), ec); @endcode */ template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence> std::size_t write_at(SyncRandomAccessWriteDevice& d, - boost::uint64_t offset, const ConstBufferSequence& buffers, + uint64_t offset, const ConstBufferSequence& buffers, boost::system::error_code& ec); /// Write a certain amount of data at a specified offset before returning. /** * This function is used to write a certain number of bytes of data to a random * access device at a specified offset. The call will block until one of the @@ -170,13 +171,13 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, * buffers in one go, and how to use it with arrays, boost::array or * std::vector. */ template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence, typename CompletionCondition> std::size_t write_at(SyncRandomAccessWriteDevice& d, - boost::uint64_t offset, const ConstBufferSequence& buffers, + uint64_t offset, const ConstBufferSequence& buffers, CompletionCondition completion_condition); /// Write a certain amount of data at a specified offset before returning. /** * This function is used to write a certain number of bytes of data to a random * access device at a specified offset. The call will block until one of the @@ -218,16 +219,16 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, * @returns The number of bytes written. If an error occurs, returns the total * number of bytes successfully transferred prior to the error. */ template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence, typename CompletionCondition> std::size_t write_at(SyncRandomAccessWriteDevice& d, - boost::uint64_t offset, const ConstBufferSequence& buffers, + uint64_t offset, const ConstBufferSequence& buffers, CompletionCondition completion_condition, boost::system::error_code& ec); -#if !defined(BOOST_NO_IOSTREAM) +#if !defined(BOOST_ASIO_NO_IOSTREAM) /// Write all of the supplied data at the specified offset before returning. /** * This function is used to write a certain number of bytes of data to a random * access device at a specified offset. The call will block until one of the * following conditions is true: @@ -254,13 +255,13 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, * @code boost::asio::write_at( * d, 42, b, * boost::asio::transfer_all()); @endcode */ template <typename SyncRandomAccessWriteDevice, typename Allocator> std::size_t write_at(SyncRandomAccessWriteDevice& d, - boost::uint64_t offset, basic_streambuf<Allocator>& b); + uint64_t offset, basic_streambuf<Allocator>& b); /// Write all of the supplied data at the specified offset before returning. /** * This function is used to write a certain number of bytes of data to a random * access device at a specified offset. The call will block until one of the * following conditions is true: @@ -287,13 +288,13 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, * @code boost::asio::write_at( * d, 42, b, * boost::asio::transfer_all(), ec); @endcode */ template <typename SyncRandomAccessWriteDevice, typename Allocator> std::size_t write_at(SyncRandomAccessWriteDevice& d, - boost::uint64_t offset, basic_streambuf<Allocator>& b, + uint64_t offset, basic_streambuf<Allocator>& b, boost::system::error_code& ec); /// Write a certain amount of data at a specified offset before returning. /** * This function is used to write a certain number of bytes of data to a random * access device at a specified offset. The call will block until one of the @@ -330,13 +331,13 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, * @returns The number of bytes transferred. * * @throws boost::system::system_error Thrown on failure. */ template <typename SyncRandomAccessWriteDevice, typename Allocator, typename CompletionCondition> -std::size_t write_at(SyncRandomAccessWriteDevice& d, boost::uint64_t offset, +std::size_t write_at(SyncRandomAccessWriteDevice& d, uint64_t offset, basic_streambuf<Allocator>& b, CompletionCondition completion_condition); /// Write a certain amount of data at a specified offset before returning. /** * This function is used to write a certain number of bytes of data to a random * access device at a specified offset. The call will block until one of the @@ -374,17 +375,17 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, boost::uint64_t offset, * * @returns The number of bytes written. If an error occurs, returns the total * number of bytes successfully transferred prior to the error. */ template <typename SyncRandomAccessWriteDevice, typename Allocator, typename CompletionCondition> -std::size_t write_at(SyncRandomAccessWriteDevice& d, boost::uint64_t offset, +std::size_t write_at(SyncRandomAccessWriteDevice& d, uint64_t offset, basic_streambuf<Allocator>& b, CompletionCondition completion_condition, boost::system::error_code& ec); -#endif // !defined(BOOST_NO_IOSTREAM) +#endif // !defined(BOOST_ASIO_NO_IOSTREAM) /*@}*/ /** * @defgroup async_write_at boost::asio::async_write_at * * @brief Start an asynchronous operation to write a certain amount of data at @@ -403,13 +404,18 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, boost::uint64_t offset, * @li All of the data in the supplied buffers has been written. That is, the * bytes transferred is equal to the sum of the buffer sizes. * * @li An error occurred. * * This operation is implemented in terms of zero or more calls to the device's - * async_write_some_at function. + * async_write_some_at function, and is known as a <em>composed operation</em>. + * The program must ensure that the device performs no <em>overlapping</em> + * write operations (such as async_write_at, the device's async_write_some_at + * function, or any other composed operations that perform writes) until this + * operation completes. Operations are overlapping if the regions defined by + * their offsets, and the numbers of bytes to write, intersect. * * @param d The device to which the data is to be written. The type must support * the AsyncRandomAccessWriteDevice concept. * * @param offset The offset at which the data will be written. * @@ -442,13 +448,15 @@ std::size_t write_at(SyncRandomAccessWriteDevice& d, boost::uint64_t offset, * See the @ref buffer documentation for information on writing multiple * buffers in one go, and how to use it with arrays, boost::array or * std::vector. */ template <typename AsyncRandomAccessWriteDevice, typename ConstBufferSequence, typename WriteHandler> -void async_write_at(AsyncRandomAccessWriteDevice& d, boost::uint64_t offset, +BOOST_ASIO_INITFN_RESULT_TYPE(WriteHandler, + void (boost::system::error_code, std::size_t)) +async_write_at(AsyncRandomAccessWriteDevice& d, uint64_t offset, const ConstBufferSequence& buffers, BOOST_ASIO_MOVE_ARG(WriteHandler) handler); /// Start an asynchronous operation to write a certain amount of data at the /// specified offset. /** @@ -460,13 +468,18 @@ void async_write_at(AsyncRandomAccessWriteDevice& d, boost::uint64_t offset, * @li All of the data in the supplied buffers has been written. That is, the * bytes transferred is equal to the sum of the buffer sizes. * * @li The completion_condition function object returns 0. * * This operation is implemented in terms of zero or more calls to the device's - * async_write_some_at function. + * async_write_some_at function, and is known as a <em>composed operation</em>. + * The program must ensure that the device performs no <em>overlapping</em> + * write operations (such as async_write_at, the device's async_write_some_at + * function, or any other composed operations that perform writes) until this + * operation completes. Operations are overlapping if the regions defined by + * their offsets, and the numbers of bytes to write, intersect. * * @param d The device to which the data is to be written. The type must support * the AsyncRandomAccessWriteDevice concept. * * @param offset The offset at which the data will be written. * @@ -514,18 +527,20 @@ void async_write_at(AsyncRandomAccessWriteDevice& d, boost::uint64_t offset, * See the @ref buffer documentation for information on writing multiple * buffers in one go, and how to use it with arrays, boost::array or * std::vector. */ template <typename AsyncRandomAccessWriteDevice, typename ConstBufferSequence, typename CompletionCondition, typename WriteHandler> -void async_write_at(AsyncRandomAccessWriteDevice& d, - boost::uint64_t offset, const ConstBufferSequence& buffers, +BOOST_ASIO_INITFN_RESULT_TYPE(WriteHandler, + void (boost::system::error_code, std::size_t)) +async_write_at(AsyncRandomAccessWriteDevice& d, + uint64_t offset, const ConstBufferSequence& buffers, CompletionCondition completion_condition, BOOST_ASIO_MOVE_ARG(WriteHandler) handler); -#if !defined(BOOST_NO_IOSTREAM) +#if !defined(BOOST_ASIO_NO_IOSTREAM) /// Start an asynchronous operation to write all of the supplied data at the /// specified offset. /** * This function is used to asynchronously write a certain number of bytes of * data to a random access device at a specified offset. The function call @@ -534,13 +549,18 @@ void async_write_at(AsyncRandomAccessWriteDevice& d, * * @li All of the data in the supplied basic_streambuf has been written. * * @li An error occurred. * * This operation is implemented in terms of zero or more calls to the device's - * async_write_some_at function. + * async_write_some_at function, and is known as a <em>composed operation</em>. + * The program must ensure that the device performs no <em>overlapping</em> + * write operations (such as async_write_at, the device's async_write_some_at + * function, or any other composed operations that perform writes) until this + * operation completes. Operations are overlapping if the regions defined by + * their offsets, and the numbers of bytes to write, intersect. * * @param d The device to which the data is to be written. The type must support * the AsyncRandomAccessWriteDevice concept. * * @param offset The offset at which the data will be written. * @@ -563,13 +583,15 @@ void async_write_at(AsyncRandomAccessWriteDevice& d, * not, the handler will not be invoked from within this function. Invocation of * the handler will be performed in a manner equivalent to using * boost::asio::io_service::post(). */ template <typename AsyncRandomAccessWriteDevice, typename Allocator, typename WriteHandler> -void async_write_at(AsyncRandomAccessWriteDevice& d, boost::uint64_t offset, +BOOST_ASIO_INITFN_RESULT_TYPE(WriteHandler, + void (boost::system::error_code, std::size_t)) +async_write_at(AsyncRandomAccessWriteDevice& d, uint64_t offset, basic_streambuf<Allocator>& b, BOOST_ASIO_MOVE_ARG(WriteHandler) handler); /// Start an asynchronous operation to write a certain amount of data at the /// specified offset. /** * This function is used to asynchronously write a certain number of bytes of @@ -579,13 +601,18 @@ void async_write_at(AsyncRandomAccessWriteDevice& d, boost::uint64_t offset, * * @li All of the data in the supplied basic_streambuf has been written. * * @li The completion_condition function object returns 0. * * This operation is implemented in terms of zero or more calls to the device's - * async_write_some_at function. + * async_write_some_at function, and is known as a <em>composed operation</em>. + * The program must ensure that the device performs no <em>overlapping</em> + * write operations (such as async_write_at, the device's async_write_some_at + * function, or any other composed operations that perform writes) until this + * operation completes. Operations are overlapping if the regions defined by + * their offsets, and the numbers of bytes to write, intersect. * * @param d The device to which the data is to be written. The type must support * the AsyncRandomAccessWriteDevice concept. * * @param offset The offset at which the data will be written. * @@ -622,17 +649,19 @@ void async_write_at(AsyncRandomAccessWriteDevice& d, boost::uint64_t offset, * not, the handler will not be invoked from within this function. Invocation of * the handler will be performed in a manner equivalent to using * boost::asio::io_service::post(). */ template <typename AsyncRandomAccessWriteDevice, typename Allocator, typename CompletionCondition, typename WriteHandler> -void async_write_at(AsyncRandomAccessWriteDevice& d, boost::uint64_t offset, +BOOST_ASIO_INITFN_RESULT_TYPE(WriteHandler, + void (boost::system::error_code, std::size_t)) +async_write_at(AsyncRandomAccessWriteDevice& d, uint64_t offset, basic_streambuf<Allocator>& b, CompletionCondition completion_condition, BOOST_ASIO_MOVE_ARG(WriteHandler) handler); -#endif // !defined(BOOST_NO_IOSTREAM) +#endif // !defined(BOOST_ASIO_NO_IOSTREAM) /*@}*/ } // namespace asio } // namespace boost |