diff options
Diffstat (limited to 'src/third_party/boost-1.56.0/boost/asio/use_future.hpp')
-rw-r--r-- | src/third_party/boost-1.56.0/boost/asio/use_future.hpp | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/src/third_party/boost-1.56.0/boost/asio/use_future.hpp b/src/third_party/boost-1.56.0/boost/asio/use_future.hpp deleted file mode 100644 index c643c8d4625..00000000000 --- a/src/third_party/boost-1.56.0/boost/asio/use_future.hpp +++ /dev/null @@ -1,94 +0,0 @@ -// -// use_future.hpp -// ~~~~~~~~~~~~~~ -// -// 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_USE_FUTURE_HPP -#define BOOST_ASIO_USE_FUTURE_HPP - -#if defined(_MSC_VER) && (_MSC_VER >= 1200) -# pragma once -#endif // defined(_MSC_VER) && (_MSC_VER >= 1200) - -#include <boost/asio/detail/config.hpp> -#include <memory> - -#include <boost/asio/detail/push_options.hpp> - -namespace boost { -namespace asio { - -/// Class used to specify that an asynchronous operation should return a future. -/** - * The use_future_t class is used to indicate that an asynchronous operation - * should return a std::future object. A use_future_t object may be passed as a - * handler to an asynchronous operation, typically using the special value @c - * boost::asio::use_future. For example: - * - * @code std::future<std::size_t> my_future - * = my_socket.async_read_some(my_buffer, boost::asio::use_future); @endcode - * - * The initiating function (async_read_some in the above example) returns a - * future that will receive the result of the operation. If the operation - * completes with an error_code indicating failure, it is converted into a - * system_error and passed back to the caller via the future. - */ -template <typename Allocator = std::allocator<void> > -class use_future_t -{ -public: - /// The allocator type. The allocator is used when constructing the - /// @c std::promise object for a given asynchronous operation. - typedef Allocator allocator_type; - - /// Construct using default-constructed allocator. - BOOST_ASIO_CONSTEXPR use_future_t() - { - } - - /// Construct using specified allocator. - explicit use_future_t(const Allocator& allocator) - : allocator_(allocator) - { - } - - /// Specify an alternate allocator. - template <typename OtherAllocator> - use_future_t<OtherAllocator> operator[](const OtherAllocator& allocator) const - { - return use_future_t<OtherAllocator>(allocator); - } - - /// Obtain allocator. - allocator_type get_allocator() const - { - return allocator_; - } - -private: - Allocator allocator_; -}; - -/// A special value, similar to std::nothrow. -/** - * See the documentation for boost::asio::use_future_t for a usage example. - */ -#if defined(BOOST_ASIO_HAS_CONSTEXPR) || defined(GENERATING_DOCUMENTATION) -constexpr use_future_t<> use_future; -#elif defined(BOOST_ASIO_MSVC) -__declspec(selectany) use_future_t<> use_future; -#endif - -} // namespace asio -} // namespace boost - -#include <boost/asio/detail/pop_options.hpp> - -#include <boost/asio/impl/use_future.hpp> - -#endif // BOOST_ASIO_USE_FUTURE_HPP |