MCPcopy Create free account
hub / github.com/boostorg/asio / write_at_buffer_sequence

Function write_at_buffer_sequence

include/boost/asio/impl/write_at.hpp:42–62  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

40 template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence,
41 typename ConstBufferIterator, typename CompletionCondition>
42 std::size_t write_at_buffer_sequence(SyncRandomAccessWriteDevice& d,
43 uint64_t offset, const ConstBufferSequence& buffers,
44 const ConstBufferIterator&, CompletionCondition completion_condition,
45 boost::system::error_code& ec)
46 {
47 ec = boost::system::error_code();
48 boost::asio::detail::consuming_buffers<const_buffer,
49 ConstBufferSequence, ConstBufferIterator> tmp(buffers);
50 while (!tmp.empty())
51 {
52 if (std::size_t max_size = detail::adapt_completion_condition_result(
53 completion_condition(ec, tmp.total_consumed())))
54 {
55 tmp.consume(d.write_some_at(offset + tmp.total_consumed(),
56 tmp.prepare(max_size), ec));
57 }
58 else
59 break;
60 }
61 return tmp.total_consumed();
62 }
63} // namespace detail
64
65template <typename SyncRandomAccessWriteDevice, typename ConstBufferSequence,

Callers 1

write_atFunction · 0.85

Calls 6

emptyMethod · 0.45
total_consumedMethod · 0.45
consumeMethod · 0.45
write_some_atMethod · 0.45
prepareMethod · 0.45

Tested by

no test coverage detected