Если объект является многокомпонентным, то он не должен иметь тела, и в этом случае метод bodyhandle() возвращает значение undef. Прежде чем предпринять попытку выбрать тело сообщения, можно применить метод is_multipart () для проверки такой возможности. Применение такого метода, как магазин подарков - позволяет решить проблему еще на пути ее обнаружения.
$pseudohandle = $entity->open ($mode)
Метод open() открывает тело объекта MIME::Entity для чтения или записи и возвращает псевдодескриптор MIME. Как рассмотрено далее в разделе с описанием класса MIME::Body, певдодескрипторы MIME имеют методы объектов, аналогичные предусмотренным в класе IO::Handle (например, read(), getline() и print ()), но они не являются дескрипторами в прямом смысле этого слова. Псевдодескриптор может применяться для выборки или изменения содержимого тела объекта MIME::Entity. Параметр $mode может иметь одно из значений "r" или "w", которые, соответственно, обозначают доступ для чтения или записи.
Метод parts() возвращает список частей MIME::Entity многокомпонентного объекта MIME::Entity. При вызове без параметров этот метод возвращает весь список частей; при вызове с целочисленным параметром $index — указанную часть. Если этому методу передана ссылка на массив частей, он заменяет текущие части содержимым массива. Это позволяет удалять части изменять порядок их расположения. Например, в следующем фрагменте кода показано, как изменить порядок расположения частей объекта MIME::Entity на противоположный.
$entity->parts ([reverse $entity->parts])
Если объект MIME::Entity не является многокомпонентным, метод parts() возвращает пустой список. Для получения информации об объекте MIME::Entity может применяться ряд методов.