parameters.cpp
Go to the documentation of this file.
1 #include "cpr/parameters.h"
2 
3 #include <initializer_list>
4 #include <string>
5 
6 #include "cpr/util.h"
7 
8 namespace cpr {
9 
10 Parameters::Parameters(const std::initializer_list<Parameter>& parameters) {
11  for (const auto& parameter : parameters) {
12  AddParameter(parameter);
13  }
14 }
15 
16 void Parameters::AddParameter(const Parameter& parameter) {
17  if (!content.empty()) {
18  content += "&";
19  }
20 
21  auto escapedKey = cpr::util::urlEncode(parameter.key);
22  if (parameter.value.empty()) {
23  content += escapedKey;
24  } else {
25  auto escapedValue = cpr::util::urlEncode(parameter.value);
26  content += escapedKey + "=" + escapedValue;
27  }
28 }
29 
30 } // namespace cpr
void AddParameter(const Parameter &parameter)
Definition: parameters.cpp:16
std::string urlEncode(const std::string &value)
Definition: util.cpp:61
std::string key
Definition: parameters.h:17
Parameters()=default
Definition: auth.cpp:3
std::string content
Definition: parameters.h:28
std::string value
Definition: parameters.h:18


rc_tagdetect_client
Author(s): Monika Florek-Jasinska , Raphael Schaller
autogenerated on Sat Feb 13 2021 03:42:16