00001 #ifndef CPR_PARAMETERS_H 00002 #define CPR_PARAMETERS_H 00003 00004 #include <initializer_list> 00005 #include <memory> 00006 #include <string> 00007 00008 #include "defines.h" 00009 00010 namespace cpr { 00011 00012 struct Parameter { 00013 template <typename KeyType, typename ValueType> 00014 Parameter(KeyType&& key, ValueType&& value) 00015 : key{CPR_FWD(key)}, value{CPR_FWD(value)} {} 00016 00017 std::string key; 00018 std::string value; 00019 }; 00020 00021 class Parameters { 00022 public: 00023 Parameters() = default; 00024 Parameters(const std::initializer_list<Parameter>& parameters); 00025 00026 void AddParameter(const Parameter& parameter); 00027 00028 std::string content; 00029 }; 00030 00031 } // namespace cpr 00032 00033 #endif