RESTinio
accept-encoding.hpp
Go to the documentation of this file.
1/*
2 * RESTinio
3 */
4
12#pragma once
13
15
16namespace restinio
17{
18
19namespace http_field_parsers
20{
21
22//
23// accept_encoding_value_t
24//
42{
43 struct item_t
44 {
45 std::string content_coding;
47 };
48
49 using item_container_t = std::vector< item_t >;
50
52
59 static auto
61 {
62 return produce< accept_encoding_value_t >(
63 maybe_empty_comma_separated_list_p< item_container_t >(
64 produce< item_t >(
67 )
69 );
70 }
71
80 {
82 }
83};
84
85} /* namespace http_field_parsers */
86
87} /* namespace restinio */
88
Utilities for parsing values of http-fields.
A class for holding the parsed value of qvalue from RFC7231.
Definition: basics.hpp:136
static constexpr qvalue_details::extremum_max_t maximum
The indicator that tells that new qvalue object should have the maximal allowed value.
Definition: basics.hpp:147
#define RESTINIO_NODISCARD
RESTINIO_NODISCARD auto maybe(Clauses &&... clauses)
A factory function to create an optional clause.
RESTINIO_NODISCARD expected_t< typename Producer::result_type, parse_error_t > try_parse(string_view_t from, Producer producer)
Perform the parsing of the specified content by using specified value producer.
RESTINIO_NODISCARD auto to_lower() noexcept
A factory function to create a to_lower_transformer.
RESTINIO_NODISCARD auto token_p() noexcept
A factory function to create a token_producer.
Definition: basics.hpp:985
RESTINIO_NODISCARD auto weight_p() noexcept
A factory function to create a producer for weight parameter.
Definition: basics.hpp:1277
nonstd::string_view string_view_t
Definition: string_view.hpp:19
nonstd::expected< T, E > expected_t
Definition: expected.hpp:22
Tools for working with the value of Accept-Encoding HTTP-field.
static RESTINIO_NODISCARD auto make_parser()
A factory function for a parser of Accept-Encoding value.
static RESTINIO_NODISCARD expected_t< accept_encoding_value_t, restinio::easy_parser::parse_error_t > try_parse(string_view_t what)
An attempt to parse Accept-Encoding HTTP-field.