Replace BOOST_ASIO_INITFN_RESULT_TYPE with BOOST_ASIO_INITFN_AUTO_RESULT_TYPE

asio::deferred doesn't work with BOOST_ASIO_INITFN_RESULT_TYPE
Fixes #2727.
This commit is contained in:
Mohammad
2023-09-05 08:54:08 +03:30
committed by Mohammad Nejati
parent 35d533299c
commit 45d4f7f306
14 changed files with 107 additions and 42 deletions
+36
View File
@@ -0,0 +1,36 @@
//
// Copyright (c) 2023 Mohammad Nejati
//
// 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)
//
#include <boost/asio/deferred.hpp>
#include <boost/asio/ip/tcp.hpp>
#include <boost/beast/http.hpp>
using namespace boost;
namespace http = boost::beast::http;
#if !defined(BOOST_NO_CXX14)
// just compile this.
void test_deferred_for_http(
asio::ip::tcp::socket & stream,
beast::flat_static_buffer_base & buf,
http::basic_parser<true> & parser,
http::serializer<true, http::empty_body> & ser,
http::message<false, http::empty_body> & msg)
{
http::async_read(stream, buf, parser, asio::deferred);
http::async_read(stream, buf, msg, asio::deferred);
http::async_read_some(stream, buf, parser, asio::deferred);
http::async_read_header(stream, buf, parser, asio::deferred);
http::async_write(stream, ser, asio::deferred);
http::async_write(stream, msg, asio::deferred);
http::async_write_header(stream, ser, asio::deferred);
http::async_write_some(stream, ser, asio::deferred);
}
#endif