12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- #ifndef BOOST_REDIS_WRITE_HPP
- #define BOOST_REDIS_WRITE_HPP
- #include <boost/asio/write.hpp>
- #include <boost/redis/request.hpp>
- namespace boost::redis::detail {
- template<class SyncWriteStream>
- auto write(SyncWriteStream& stream, request const& req)
- {
- return asio::write(stream, asio::buffer(req.payload()));
- }
- template<class SyncWriteStream>
- auto write(SyncWriteStream& stream, request const& req, system::error_code& ec)
- {
- return asio::write(stream, asio::buffer(req.payload()), ec);
- }
- template<
- class AsyncWriteStream,
- class CompletionToken = asio::default_completion_token_t<typename AsyncWriteStream::executor_type>
- >
- auto async_write(
- AsyncWriteStream& stream,
- request const& req,
- CompletionToken&& token =
- asio::default_completion_token_t<typename AsyncWriteStream::executor_type>{})
- {
- return asio::async_write(stream, asio::buffer(req.payload()), token);
- }
- }
- #endif
|