mirror of
https://github.com/Xahau/xahaud.git
synced 2025-11-24 20:45:50 +00:00
59 lines
1.9 KiB
Plaintext
59 lines
1.9 KiB
Plaintext
[/
|
|
Copyright (c) 2013-2016 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:Parser Parser]
|
|
|
|
A [*`Parser`] is used to deserialize HTTP/1 messages from [link beast.types.streams streams].
|
|
Objects of this type are used with [link beast.ref.http__parse http::parse] and
|
|
[link beast.ref.http__async_parse http::async_parse].
|
|
|
|
In this table:
|
|
|
|
* `X` denotes a type meeting the requirements of [*`Parser`].
|
|
|
|
* `a` denotes a value of type `X`.
|
|
|
|
* `b` is a value meeting the requirements of [@http://www.boost.org/doc/libs/1_61_0/doc/html/boost_asio/reference/ConvertibleToConstBuffer.html [*`ConvertibleToConstBuffer`]].
|
|
|
|
* `ec` is a value of type [link beast.ref.error_code `error_code&`].
|
|
|
|
[table Parser requirements
|
|
[[operation] [type] [semantics, pre/post-conditions]]
|
|
[
|
|
[`a.complete()`]
|
|
[`bool`]
|
|
[
|
|
Returns `true` when a complete HTTP/1 message has been parsed.
|
|
]
|
|
]
|
|
[
|
|
[`a.write(b, ec)`]
|
|
[`std::size_t`]
|
|
[
|
|
Parses the octets in the specified input buffer sequentially until
|
|
an error occurs, the end of the buffer is reached, or a complete
|
|
HTTP/1 message has been parsed. If an error occurs, `ec` is set
|
|
to the error code and parsing stops. This function returns the
|
|
number of bytes consumed from the input buffer.
|
|
]
|
|
]
|
|
[
|
|
[`a.write_eof(ec)`]
|
|
[`void`]
|
|
[
|
|
Indicates to the parser that no more octets will be available.
|
|
Typically this function is called when the end of stream is reached.
|
|
For example, if a call to `boost::asio::ip::tcp::socket::read_some`
|
|
generates a `boost::asio::error::eof` error. Some HTTP/1 messages
|
|
determine the end of the message body by an end of file marker or
|
|
closing of the connection.
|
|
]
|
|
]
|
|
]
|
|
|
|
[endsect]
|