<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="">BodyWriter</string>
    <string name="">A [*BodyWriter] provides an [@https://en.wikipedia.org/wiki/Online_algorithm online algorithm] to obtain a sequence of zero or more buffers from a body during serialization. The implementation creates an instance of this type when needed, and calls into it one or more times to retrieve buffers holding body octets. The interface of [*BodyWriter] is intended to obtain buffers for these scenarios:</string>
    <string name="">* A body that does not entirely fit in memory.\n* A body produced incrementally from coroutine output.\n* A body represented by zero or more buffers already in memory.\n* A body whose size is not known ahead of time.\n* Body data generated dynamically from other threads.\n* Body data computed algorithmically.</string>
    <string name="">Associated Types</string>
    <string name="">* [link beast.ref.boost__beast__http__is_body_writer `is_body_writer`]\n* __Body__</string>
    <string name="">Requirements</string>
    <string name="">These requirements may undergo non-backward compatible</string>
    <string name="">In this table:</string>
    <string name="">* `W` denotes a type meeting the requirements of [*BodyWriter].\n* `B` denotes a __Body__ where</string>
    <string name="">* `a` denotes a value of type `W`.\n* `h` denotes a const value of type `header&lt;isRequest, Fields&gt; const&amp;`.\n* `v` denotes a possibly const value of type `Body::value_type&amp;`.\n* `ec` is a value of type [link beast.ref.boost__beast__error_code `error_code&amp;`].\n* `W&lt;T&gt;` is the type `boost::optional&lt;std::pair&lt;T, bool&gt;&gt;`.</string>
    <string name="">Valid expressions</string>
    <string name="">Expression</string>
    <string name="">Type</string>
    <string name="">Semantics, Pre/Post-conditions</string>
    <string name="">`W::const_buffers_type`</string>
    <string name="">A type which meets the requirements of __ConstBufferSequence__. This is the type of buffer returned by `W::get`.</string>
    <string name="">`W{h,v};`</string>
    <string name="">Constructible from `h` and `v`. The lifetime of `h` and `v` are guaranteed to end no earlier than after the `W` is destroyed. The writer shall not access the contents of `h` or `v` before the first call to `init`, permitting lazy construction of the message.\n\nThe constructor may optionally require that `h` and `v` are `const` references, with these consequences:\n\n* If `W` requires that `h` and `v` are const references, then the corresponding serializer constructors for messages with this body type will will accept a const reference to a message, otherwise:\n\n* If `W` requires that `h` and `v` are non-const references, then the corresponding serializer constructors for messages with this body type will require a non-const reference to a message.</string>
    <string name="">`a.init(ec)`</string>
    <string name="">Called once to fully initialize the object before any calls to `get`. The message body becomes valid before entering this function, and remains valid until the writer is destroyed. The function will ensure that `!ec` is `true` if there was no error or set to the appropriate error code if there was one.</string>
    <string name="">`a.get(ec)`</string>
    <string name="">`W&lt;W::const_buffers_type&gt;`</string>
    <string name="">Called one or more times after `init` succeeds. This function returns `boost::none` if all buffers representing the body have been returned in previous calls or if it sets `ec` to indicate an error. Otherwise, if there are buffers remaining the function should return a pair with the first element containing a non-zero length buffer sequence representing the next set of octets in the body, while the second element is a `bool` meaning `true` if there may be additional buffers returned on a subsequent call, or `false` if the buffer returned on this call is the last buffer representing the body. The function will ensure that `!ec` is `true` if there was no error or set to the appropriate error code if there was one.</string>
    <string name="">Exemplar</string>
    <string name="">Models</string>
    <string name="">* [link beast.ref.boost__beast__http__basic_dynamic_body.writer `basic_dynamic_body::writer`]\n* [link beast.ref.boost__beast__http__basic_file_body__writer `basic_file_body::writer`]\n* [link beast.ref.boost__beast__http__basic_string_body.writer `basic_string_body::writer`]\n* [link beast.ref.boost__beast__http__buffer_body.writer `buffer_body::writer`]\n* [link beast.ref.boost__beast__http__empty_body.writer `empty_body::writer`]\n* [link beast.ref.boost__beast__http__span_body.writer `span_body::writer`]\n* [link beast.ref.boost__beast__http__vector_body.writer `vector_body::writer`]</string>
</resources>
