RESTinio
Loading...
Searching...
No Matches
content-type.hpp
Go to the documentation of this file.
1/*
2 * RESTinio
3 */
4
5/*!
6 * @file
7 * @brief Stuff related to value of Content-Type HTTP-field.
8 *
9 * @since v.0.6.1
10 */
11
12#pragma once
13
14#include <restinio/helpers/http_field_parsers/media-type.hpp>
15
16namespace restinio
17{
18
19namespace http_field_parsers
20{
21
22//
23// content_type_value_t
24//
25/*!
26 * @brief Tools for working with the value of Content-Type HTTP-field.
27 *
28 * This struct represents parsed value of HTTP-field Content-Type
29 * (see https://tools.ietf.org/html/rfc7231#section-3.1.1.5):
30@verbatim
31 Content-Type = media-type
32@endverbatim
33 *
34 * Where `media-type` is repesented by media_type_value_t.
35 *
36 * @since v.0.6.1
37 */
39{
41
42 /*!
43 * @brief A factory function for a parser of Content-Type value.
44 *
45 * @since v.0.6.1
46 */
47 [[nodiscard]]
48 static auto
50 {
51 return produce< content_type_value_t >(
53 >> &content_type_value_t::media_type
54 );
55 }
56
57 /*!
58 * @brief An attempt to parse Content-Encoding HTTP-field.
59 *
60 * @since v.0.6.1
61 */
62 [[nodiscard]]
64 try_parse( string_view_t what )
65 {
66 return restinio::easy_parser::try_parse( what, make_parser() );
67 }
68};
69
70} /* namespace http_field_parsers */
71
72} /* namespace restinio */
Tools for working with the value of Content-Type HTTP-field.
static expected_t< content_type_value_t, restinio::easy_parser::parse_error_t > try_parse(string_view_t what)
An attempt to parse Content-Encoding HTTP-field.
static auto make_parser()
A factory function for a parser of Content-Type value.
Tools for working with media-type in HTTP-fields.