Line data Source code
1 : //
2 : // Copyright (c) 2021 Vinnie Falco (vinnie.falco@gmail.com)
3 : // Copyright (c) 2024 Christian Mazakas
4 : // Copyright (c) 2025 Mohammad Nejati
5 : //
6 : // Distributed under the Boost Software License, Version 1.0. (See accompanying
7 : // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
8 : //
9 : // Official repository: https://github.com/cppalliance/http_proto
10 : //
11 :
12 : #include <boost/http_proto/request.hpp>
13 :
14 : namespace boost {
15 : namespace http_proto {
16 :
17 27 : request::
18 27 : request() noexcept
19 : : fields_view_base(
20 27 : &this->fields_base::h_)
21 27 : , request_base()
22 : {
23 27 : }
24 :
25 203 : request::
26 : request(
27 203 : core::string_view s)
28 : : fields_view_base(
29 203 : &this->fields_base::h_)
30 203 : , request_base(s)
31 : {
32 202 : }
33 :
34 4 : request::
35 : request(
36 4 : std::size_t storage_size)
37 : : fields_view_base(
38 4 : &this->fields_base::h_)
39 4 : , request_base(storage_size)
40 : {
41 4 : }
42 :
43 10 : request::
44 : request(
45 : std::size_t storage_size,
46 10 : std::size_t max_storage_size)
47 : : fields_view_base(
48 10 : &this->fields_base::h_)
49 : , request_base(
50 : storage_size,
51 10 : max_storage_size)
52 : {
53 6 : }
54 :
55 23 : request::
56 : request(
57 23 : request&& other) noexcept
58 : : fields_view_base(
59 23 : &this->fields_base::h_)
60 23 : , request_base()
61 : {
62 23 : swap(other);
63 23 : }
64 :
65 2 : request::
66 : request(
67 2 : request const& other)
68 : : fields_view_base(
69 2 : &this->fields_base::h_)
70 2 : , request_base(*other.ph_)
71 : {
72 2 : }
73 :
74 2 : request::
75 : request(
76 2 : request_view const& other)
77 : : fields_view_base(
78 2 : &this->fields_base::h_)
79 2 : , request_base(*other.ph_)
80 : {
81 2 : }
82 :
83 : request&
84 21 : request::
85 : operator=(
86 : request&& other) noexcept
87 : {
88 : request temp(
89 21 : std::move(other));
90 21 : temp.swap(*this);
91 42 : return *this;
92 21 : }
93 :
94 : } // http_proto
95 : } // boost
|