package cohttp
Module Cohttp.HeaderSource
Map of HTTP header key and value(s) associated with them. Since HTTP headers can contain duplicate keys, this structure can return a list of values associated with a single key.
The type for HTTP headers.
Construct a fresh map of HTTP headers with a single key and value entry.
Add multiple key and value pairs to an existing header map.
Add multiple values to a key in an existing header map.
Given an optional header, either update the existing one with a key and value, or construct a fresh header with those values if the header is None.
Given a header, update it with the key and value unless the key is already present in the header.
add_opt_unless_exists h k v updates h with the key k and value v unless the key is already present in the header. If h is None then a fresh header is allocated containing the key k and the value v.
Remove a key from the header map and return a fresh header set. The original header parameter is not modified.
Replace the value of a key from the header map if it exists, otherwise it adds it to the header map. The original header parameter is not modified.
update h k f returns a map containing the same headers as h, except for the header k. Depending on the value of v where v is f (get h k), the header k is added, removed or updated. If v is None, the header is removed if it exists; otherwise, if v is Some z then k is associated to z in the resulting headers. If k was already associated in h to a value that is physically equal to z, h is returned unchanged. Similarly as for get, if the header is one of the set of headers defined to have list values, then all of the values are concatenated into a single string separated by commas and passed to f, while the return value of f is split on commas and associated to k. If it is a singleton header, then the first value is passed to f and no concatenation is performed, similarly for the return value. The original header parameters are not modified.
Retrieve a key from a header. If the header is one of the set of headers defined to have list values, then all of the values are concatenated into a single string separated by commas and returned. If it is a singleton header, then the first value is selected and no concatenation is performed.
Return header fieds as a list of lines. Beware that each line ends with "\r\n" characters.
The User-Agent header used by this library, including the version of cohttp.
Prepend user_agent to the product token already declared in the "User-Agent" field (if any).
Human-readable output, used by the toplevel printer