...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Set a callback to be invoked on each chunk header.
template< class Callback> void on_chunk_header( Callback& cb);
The callback will be invoked once for every chunk in the message payload, as well as once for the last chunk. The invocation happens after the chunk header is available but before any body octets have been parsed.
The extensions are provided in raw, validated form, use chunk_extensions::parse
to parse the extensions
into a structured container for easier access. The implementation type-erases
the callback without requiring a dynamic allocation. For this reason, the
callback object is passed by a non-constant reference.
auto callback = [](std::uint64_t size, string_view extensions, error_code& ec) { //... }; parser.on_chunk_header(callback);
Name |
Description |
---|---|
|
The function to set, which must be invocable with this equivalent signature: void on_chunk_header( std::uint64_t size, // Size of the chunk, zero for the last chunk string_view extensions, // The chunk-extensions in raw form error_code& ec); // May be set by the callback to indicate an error |