[/ Copyright (c) 2013-2017 Vinnie Falco (vinnie dot falco at gmail dot com) Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ] [section:FieldsReader FieldsReader] A [*FieldsReader] provides a algorithm to obtain a sequence of buffers representing the complete serialized HTTP/1 header for a set of fields. The implementation constructs an instance of this type when needed, and calls into it once to retrieve the buffers. In this table: * `X` denotes a type that meets the requirements of [*FieldsReader]. * `F` denotes a __Fields__ where `std::is_same::value == `true`. * `a` is a value of type `X`. * `f` is a value of type `F`. * `v` is an integer representing the HTTP version. * `c` is an integer representing the HTTP status-code. * `m` is a value of type [link beast.ref.http__verb `verb`]. [table FieldsReader requirements [[expression][type][semantics, pre/post-conditions]] [ [`X::const_buffers_type`] [] [ A type which meets the requirements of __ConstBufferSequence__. This is the type of buffer returned by `X::get`. ] ][ [`X(f,v,m)`] [] [ The implementatation uses this constructor to indicate that the fields being serialized form part of an HTTP request. The lifetime of `f` is guaranteed to end no earlier than after the `X` is destroyed. ] ][ [`X(f,v,c)`] [] [ The implementatation uses this constructor to indicate that the fields being serialized form part of an HTTP response. The lifetime of `f` is guaranteed to end no earlier than after the `X` is destroyed. ] ][ [`a.get()`] [X::const_buffers_type] [ Called once after construction, this function returns a constant buffer sequence containing the serialized representation of the HTTP request or response including the final carriage return linefeed sequence (`"\r\n"`). ] ][ [`is_fields_reader`] [`std::true_type`] [ An alias for `std::true_type` for `F`, otherwise an alias for `std::false_type`. ] ] ] [endsect]