mail::Header::mime — A structured MIME header.
#include <libmail/headers.H>
mail::Header::mime content_type("Content-Type", "text/plain");
content_type.parameters.set_simple("charset", "iso-8859-1");
mail::Header::mime content_disposition("Content-Disposition", "attachment")
("filename", "document.doc")
("name", "Monthly Sales", "iso-8859-1", "EN");
std::cout << content_type.toString();
This class creates a structured MIME header. A structured
MIME header, like Content-Type
or Content-Disposition contains
a literal value, and zero or more “name=setting” parameters, separated by
semicolons.
Two arguments are provided to the constructor, the
header's name, and its literal value. After constructing, use
the parameters
member to set the parameters. This member has the following
methods:
Set parameter name to
value. value must contain US-ASCII text only.
Set parameter name to
value. charset specifies value's character set. language is optional, and specifies
value's language.
value is converted to
US-ASCII text according to
RFC 2231.
Remove parameter name.
The toString() returns the
header as a single text string: “name:
value”. Long
headers are folded accordingly.
Parameters can also be dynamically populated by repeatedly calling the “()”.
One version of the “()” operator receives the parameter
name and value, and corresponds to the set_simple method. The second version
also receives the character set and language information,
and corresponds to the set
function.