18 #ifndef CORE_NET_HTTP_HEADER_H_
19 #define CORE_NET_HTTP_HEADER_H_
51 static std::string canonicalize_key(
const std::string& key);
53 virtual ~
Header() =
default;
60 virtual bool has(
const std::string& key,
const std::string& value)
const;
66 virtual bool has(
const std::string& key)
const;
71 virtual void add(
const std::string& key,
const std::string& value);
76 virtual void remove(
const std::string& key);
81 virtual void remove(
const std::string& key,
const std::string& value);
86 virtual void set(
const std::string& key,
const std::string& value);
91 virtual void enumerate(
const std::function<
void(
const std::string&,
const std::set<std::string>&)>& enumerator)
const;
95 std::map<std::string, std::set<std::string>> fields;
102 #endif // CORE_NET_HTTP_HEADER_H_