<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.1" version="1.1">
  <file original="NoName" source-language="en" datatype="plaintext" target-language="zh_Hans">
    <body>
      <trans-unit xml:space="preserve" approved="no" id="24783b67f5f50b2f">
        <source>BuffersGenerator</source>
        <target state="translated">缓冲区生成器</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">10</context>
        </context-group>
        <note from="developer">type: section title</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="8f8015ef4ae238e0">
        <source>A [*BuffersGenerator] provides a generalized interface for generating serialized data for sequential processing.</source>
        <target state="translated">[*缓冲区生成器] 用于提供通用接口，以生成用于顺序处理的序列化数据。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">12</context>
        </context-group>
        <note from="developer">type: paragraph</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="04647d51fbcf34f1">
        <source>The generator will be asked to produce buffers. The consuming code will signal how much of the data has been consumed, and repeatedly query for buffers until no more data is available, or the generator indicates an error condition.</source>
        <target state="translated">该生成器将被要求生成缓冲区。调用方代码用于指示已消费的数据量，并重复查询缓冲区，直到无更多数据可用，或该生成器指示错误条件为止。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">15</context>
        </context-group>
        <note from="developer">type: paragraph</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="08b6792f8fdc42ae">
        <source>In this way, serializers can be adapted as [*BuffersGenerator], for example [link beast.ref.boost__beast__http__message_generator `http::message_generator`] which provides a type-erased interface for a variety of concrete http message types.</source>
        <target state="translated">通过这种方式，序列化器可适配为[*缓冲区生成器]，例如[link beast.ref.boost__beast__http__message_generator `http::message_generator`] 用于为多种具体 HTTP 消息类型提供类型擦除接口。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">19</context>
        </context-group>
        <note from="developer">type: paragraph</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="eed796728b747059">
        <source>Overloads of [link beast.ref.boost__beast__write `write`] and [link beast.ref.boost__beast__async_write `async_write`] operations are provided as free functions. These operations will consume the output of a [*BuffersGenerator] and process the data by writing them to a __SyncWriteStream__ or __AsyncWriteStream__ respectively.</source>
        <target state="translated">[link beast.ref.boost__beast__write write] 与 [link beast.ref.boost__beast__async_write async_write] 操作以自由函数形式提供重载。这些操作用于调用 [*缓冲区生成器] 的输出，并分别将数据写入 SyncWriteStream 或 AsyncWriteStream 进行处理。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">24</context>
        </context-group>
        <note from="developer">type: paragraph</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="f3a497a2277c8436">
        <source>Associated Types</source>
        <target state="translated">关联类型</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">30</context>
        </context-group>
        <note from="developer">type: heading</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="03bb0106b98117a0">
        <source>* [link beast.ref.boost__beast__is_buffers_generator `is_buffers_generator`]
* __ConstBufferSequence__</source>
        <target state="translated">* [link beast.ref.boost__beast__is_buffers_generator `is_buffers_generator`]
* __ConstBufferSequence__</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">32</context>
        </context-group>
        <note from="developer">type: list</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="8b11f6ce20c469c2">
        <source>Requirements</source>
        <target state="translated">要求</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">35</context>
        </context-group>
        <note from="developer">type: heading</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="3d4704df21a8f596">
        <source>In this table:</source>
        <target state="translated">在下表中:</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">37</context>
        </context-group>
        <note from="developer">type: paragraph</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="8e383d8e18a1ab1d">
        <source>* `G` denotes a type meeting the requirements of [*BuffersGenerator].
* `g` denotes a value of type `G`.
* `c` denotes a possibly-const value of type `G`.
* `n` is a value of type `std::size_t`.
* `ec` is a value of type [link beast.ref.boost__beast__error_code `error_code&amp;`].</source>
        <target state="translated">- `G` 用于表示满足 [*缓冲区生成器] 要求的类型。
- `g` 用于表示类型 `G` 的值。
- `c` 用于表示类型 `G` 的可能为 const 的值。
- `n` 是类型 `std::size_t` 的值。
- `ec` 是类型 [link beast.ref.boost__beast__error_code `error_code&amp;`] 的值。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">39</context>
        </context-group>
        <note from="developer">type: list</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="f2992975a033cf9f">
        <source>Valid expressions</source>
        <target state="translated">有效表达式</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table title</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="8d4d85b75b66a390">
        <source>Expression</source>
        <target state="translated">表达式</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="4260caf7dbb163c2">
        <source>Type</source>
        <target state="translated">类型</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="e9c35981ac872e45">
        <source>Semantics, Pre/Post-conditions</source>
        <target state="translated">语义、前置/后置条件</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" id="45">
        <source>`G::const_buffers_type`</source>
        <target></target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="b830b74c321c7a93">
        <source>A type which meets the requirements of __ConstBufferSequence__. This is the type of buffer returned by `g.prepare(ec)`.</source>
        <target state="translated">满足 __ConstBufferSequence__ 要求的类型。该类型用于表示 `g.prepare(ec)` 所返回的缓冲区类型。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="d95a98336bc03ac4">
        <source>`c.is_done()`</source>
        <target state="translated">`c.is_done()`</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="293c2947c48c8f40">
        <source>`bool`</source>
        <target state="translated">`bool`（布尔值）</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="5e2f2ce626796994">
        <source>Called to ask the generator for its completion status.

A generator has completed when no new buffer will be produced and previously produced buffers have been fully consumed.

[*Note:] The result of invoking `prepare` on `g` once it has completed is unspecified.</source>
        <target state="translated">调用此函数以向生成器（generator）查询其完成状态。

当生成器不再产生新的缓冲区，且之前已产生的缓冲区已被完全消费时，即表示生成器已完成。

[*注意：] 在生成器 g 完成后，对其调用 prepare 的结果是未定义的（unspecified）。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="3da6c1050b6c1811">
        <source>`g.prepare(ec)`</source>
        <target state="translated">`g.prepare(ec)`</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="a952339e8466cd4f">
        <source>Called to ask the generator to produce buffers containing data for processing.

The returned value is the __ConstBufferSequence__ representing unconsumed data.

The function will ensure that `ec.failed()` is `false` if there was no error or set to the appropriate error code if there was one.

If no unconsumed data is available, this operation shall make progress to eventually reach completion.

The result of invoking `prepare` after completion or encountered error(s) is defined by the generator implementation. It can not be assumed to be meaningful or safe to do so, in general.

The capacity of the buffer returned is defined by the generator implementation.

[*Note:] Any buffers obtained by previous calls to `prepare` are invalidated.</source>
        <target state="translated">调用此函数以请求生成器生成包含待处理数据的缓冲区。

返回值为代表未消费数据的 ConstBufferSequence。

如果未发生错误，该函数将确保 ec.failed() 为 false；如果发生了错误，则将其设置为相应的错误码。

如果没有可用的未消费数据，此操作应取得进展，以最终达到完成状态。

在完成或遇到错误后调用‘prepare’的结果由生成器实现定义。通常情况下，不能假定这种调用具有意义或是安全的。

返回缓冲区的容量由生成器实现定义。

[*注意：] 此前调用‘prepare’所获得的任何缓冲区均会失效。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="fd519a8240eb9a7d">
        <source>`g.consume(n)`</source>
        <target state="translated">`g.consume(n)`</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="f8d49358e4b736a7">
        <source>This function is called to signal that the consumer (caller) of the generator has processed part of the data returned by the previous call to `prepare`.

The value of `n` indicates how much of the data processed (in bytes).

When `n` exceeds the number of bytes returned from the last call to `prepare`, `consume` shall behave as if `n` was equal to that number.

Remaining unconsumed data will be returned from subsequent calls to `prepare`.

[*Note:] Any buffers obtained by previous calls to `prepare` are invalidated.</source>
        <target state="translated">调用此函数以向生成器发出信号，表明生成器的消费者（调用者）已处理了上一次调用‘prepare’所返回的部分数据。

n 的值表示已处理的数据量（以字节为单位）。

当 n 超过上一次调用‘prepare’返回的字节数时，‘consume’ 的行为应如同 n 等于该字节数一样。

剩余的未消费数据将在后续调用‘prepare’时返回。

[*注意：] 此前调用‘prepare’所获得的任何缓冲区均会失效。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="1198f2781eb429ca">
        <source>`is_buffers_generator&lt;G&gt;`</source>
        <target state="translated">`is_buffers_generator&lt;G&gt;`</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="24c4d2b73f43cc64">
        <source>`std::bool_constant`</source>
        <target state="translated">`std::bool_constant`</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="5d07f7bec8453629">
        <source>An alias for `std::true_type` for `G`, otherwise an alias for `std::false_type`.</source>
        <target state="translated">如果 G 满足条件，则为 std::true_type 的别名，否则为 std::false_type 的别名。</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">45</context>
        </context-group>
        <note from="developer">type: table cell</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="224a3e920796d4a5">
        <source>Exemplar</source>
        <target state="translated">示例</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">120</context>
        </context-group>
        <note from="developer">type: heading</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="122">
        <source>```</source>
        <target state="translated">```</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">122</context>
        </context-group>
        <note from="developer">type: paragraph</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="135">
        <source>```</source>
        <target state="translated">```</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">135</context>
        </context-group>
        <note from="developer">type: paragraph</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="fa69553690b47eb3">
        <source>Models</source>
        <target state="translated">模型</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">137</context>
        </context-group>
        <note from="developer">type: heading</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="e1f74389e04faa97">
        <source>* [link beast.ref.boost__beast__http__message_generator `http::message_generator`]</source>
        <target state="translated">* [link beast.ref.boost__beast__http__message_generator `http::message_generator`]</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">139</context>
        </context-group>
        <note from="developer">type: list</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="261d51ad05d13ee7">
        <source>Algorithms</source>
        <target state="translated">算法</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">141</context>
        </context-group>
        <note from="developer">type: heading</note>
      </trans-unit>
      <trans-unit xml:space="preserve" approved="no" id="daff6e86ad7354e5">
        <source>* [link beast.ref.boost__beast__async_write `async_write`]
* [link beast.ref.boost__beast__write `write`]</source>
        <target state="translated">* [link beast.ref.boost__beast__async_write `async_write`]
* [link beast.ref.boost__beast__write `write`]</target>
        <context-group name="" purpose="location">
          <context context-type="sourcefile">143</context>
        </context-group>
        <note from="developer">type: list</note>
      </trans-unit>
    </body>
  </file>
</xliff>
