This class provides the following methods:
Courriel::Part::Multipart->new(...)
This method creates a new part object. It accepts the following parameters:
• parts
An array reference of part objects (either Single or Multipart). This is required, but could be
empty.
• content_type
A Courriel::Header::ContentType object. This defaults to one with a mime type of "multipart/mixed".
• boundary
The part boundary. If none is provided, a unique value will be generated.
• preamble
Content that appears before the first part boundary. This will be seen by email clients that don't
understand multipart messages.
• epilogue
Content that appears after the final part boundary. The spec allows for this, but it's probably not
very useful.
• headers
A Courriel::Headers object containing headers for this part.
$part->parts()
Returns an array (not a reference) of the parts this part contains.
$part->part_count()
Returns the number of parts this part contains.
$part->boundary()
Returns the part boundary.
$part->mime_type()
Returns the mime type for this part.
$part->content_type()
Returns the Courriel::Header::ContentType object for this part.
$part->headers()
Returns the Courriel::Headers object for this part.
$part->is_inline(),$part->is_attachment()
These methods always return false, but exist for the sake of providing a consistent API between Single
and Multipart part objects.
$part->is_multipart()
Returns true.
$part->preamble()
The preamble as passed to the constructor.
$part->epilogue()
The epilogue as passed to the constructor.
$part->container()
Returns the Courriel or Courriel::Part::Multipart object to which this part belongs, if any. This is set
when the part is added to another object.
$part->stream_to(output=>$output)
This method will send the stringified part to the specified output. The output can be a subroutine
reference, a filehandle, or an object with a "print()" method. The output may be sent as a single string,
as a list of strings, or via multiple calls to the output.
$part->as_string()
Returns the part as a string, along with its headers. Lines will be terminated with "\r\n".