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.