---
name: "Mail::Message::Convert"
section: "3pm"
platform: "linux"
package: "perl-mail-message"
version: "4.05-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Mail::Message::Convert"
---

# Mail::Message::Convert(3pm)

conversions between message types

## NAME

Mail::Message::Convert - conversions between message types

## INHERITANCE

```
 Mail::Message::Convert
   is a Mail::Reporter
 Mail::Message::Convert is extended by
   Mail::Message::Convert::EmailSimple
   Mail::Message::Convert::Html
   Mail::Message::Convert::HtmlFormatPS
   Mail::Message::Convert::HtmlFormatText
   Mail::Message::Convert::MailInternet
   Mail::Message::Convert::MimeEntity
   Mail::Message::Convert::TextAutoformat
```

## SYNOPSIS

Available methods are very converter-specific.

## DESCRIPTION

This class is the base for various message (and message parts) converters.

Extends "DESCRIPTION" in Mail::Reporter.

### Converters between message objects

Internally, the **Mail::Message::coerce()** is called when foreign objects are used where message objects are expected.  That method will automatically create the converting objects, and re-use them.

- •

  Mail::Message::Convert::MailInternet

  Converts the simple Mail::Internet messages into Mail::Message objects.

- •

  Mail::Message::Convert::MimeEntity

  Converts the more complicated MIME::Entity messages into Mail::Message objects.

- •

  Mail::Message::Convert::EmailSimple

  Converts Email::Simple messages into Mail::Message objects.

### Other converters

- •

  Mail::Message::Convert::Html

  Plays tricks with HTML/XMHTML without help of external modules.

- •

  Mail::Message::Convert::HtmlFormatText

  Converts HTML body objects to plain text objects using the HTML::FormatText module.

- •

  Mail::Message::Convert::HtmlFormatPS

  Converts HTML body objects to Postscript objects using the HTML::FormatPS module.

- •

  Mail::Message::Convert::TextAutoformat

  Converts a text message into text using Text::Autoformat.

## METHODS

Extends "METHODS" in Mail::Reporter.

### Constructors

Extends "Constructors" in Mail::Reporter.

- $class-\>**new**(%options)

  Inherited, see "Constructors" in Mail::Reporter

  ```
   -Option--Default
    fields  <see description>
  ```

  - fields =\> $name\|$regex\|\\@names\|\\@regexes

    Select the fields of a header which are to be handled.  Other fields will not be used.  The value of this option is passed to **Mail::Message::Head::Complete::grepNames()** whenever converters feel a need for header line selection. By default, the `"To"`, `"From"`, `"Cc"`, `"Bcc"`, `"Date"`, `"Subject"`, and their `"Resent-"` counterparts will be selected.  Specify an empty list to get all fields.

### Attributes

Extends "Attributes" in Mail::Reporter.

### Converting

- $obj-\>**selectedFields**($head)

  Returns a list of fields to be included in the format.  The list is an ordered selection of the fields in the actual header, and filtered through the information as specified with new(fields).

### Error handling

Extends "Error handling" in Mail::Reporter.

- $obj-\>**AUTOLOAD**()

  Inherited, see "Error handling" in Mail::Reporter

- $obj-\>**notImplemented**()

  Inherited, see "Error handling" in Mail::Reporter

### Cleanup

Extends "Cleanup" in Mail::Reporter.

- $obj-\>**DESTROY**()

  Inherited, see "Cleanup" in Mail::Reporter

## DIAGNOSTICS

- Error: class $package does not implement method $method.

  Fatal error: the specific `$package` (or one of its superclasses) does not implement this method where it should. This message means that some other related classes do implement this method however the class at hand does not.  Probably you should investigate this and probably inform the author of the package. Cast by `notImplemented()`

## SEE ALSO

This module is part of Mail-Message version 4.05, built on April 10, 2026. Website: *http://perl.overmeer.net/mailbox/*

## LICENSE

For contributors see file ChangeLog.

This software is copyright (c) 2001-2026 by Mark Overmeer.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
