RESTinio
Loading...
Searching...
No Matches
restinio
helpers
http_field_parsers
connection.hpp
Go to the documentation of this file.
1
/*
2
* RESTinio
3
*/
4
5
/*!
6
* @file
7
* @brief Stuff related to value of Connection HTTP-field.
8
*
9
* @since v.0.6.9
10
*/
11
12
#
pragma
once
13
14
#
include
<
restinio
/
helpers
/
http_field_parsers
/
basics
.
hpp
>
15
16
namespace
restinio
17
{
18
19
namespace
http_field_parsers
20
{
21
22
//
23
// connection_value_t
24
//
25
/*!
26
* @brief Tools for working with the value of Connection HTTP-field.
27
*
28
* This struct represents parsed value of HTTP-field Connection
29
* (see https://tools.ietf.org/html/rfc7230#section-6):
30
@verbatim
31
Connection = 1#connection-option
32
connection-option = token
33
@endverbatim
34
*
35
* @note
36
* Connection options are converted to lower case during the parsing.
37
*
38
* @since v.0.6.9
39
*/
40
struct
connection_value_t
41
{
42
using
value_container_t
=
std
::
vector
<
std
::
string
>;
43
44
value_container_t
values
;
45
46
/*!
47
* @brief A factory function for a parser of Connection value.
48
*
49
* @since v.0.6.9
50
*/
51
[[
nodiscard
]]
52
static
auto
53
make_parser
()
54
{
55
return
produce< connection_value_t >(
56
non_empty_comma_separated_list_p< value_container_t >(
57
token_p() >> to_lower()
58
) >> &connection_value_t::values
59
);
60
}
61
62
/*!
63
* @brief An attempt to parse Connection HTTP-field.
64
*
65
* @since v.0.6.9
66
*/
67
[[
nodiscard
]]
68
static
expected_t
<
connection_value_t
,
restinio
::
easy_parser
::
parse_error_t
>
69
try_parse
( string_view_t what )
70
{
71
return
restinio
::
easy_parser
::try_parse( what,
make_parser
(
)
);
72
}
73
};
74
75
}
/* namespace http_field_parsers */
76
77
}
/* namespace restinio */
restinio::easy_parser
Definition
easy_parser.hpp:40
restinio::http_field_parsers
Definition
accept-charset.hpp:20
restinio
Definition
sendfile_operation_default.ipp:12
restinio::http_field_parsers::connection_value_t
Tools for working with the value of Connection HTTP-field.
Definition
connection.hpp:41
restinio::http_field_parsers::connection_value_t::make_parser
static auto make_parser()
A factory function for a parser of Connection value.
Definition
connection.hpp:53
restinio::http_field_parsers::connection_value_t::try_parse
static expected_t< connection_value_t, restinio::easy_parser::parse_error_t > try_parse(string_view_t what)
An attempt to parse Connection HTTP-field.
Definition
connection.hpp:69
restinio::http_field_parsers::connection_value_t::values
value_container_t values
Definition
connection.hpp:44
Generated by
1.14.0