Mетод parse() интерпретирует сообщение MIME, считывая его текст из открытого дескриптора и при успешном выполнении он возвращает объект MIME::Entity. В ином случае метод может активизировать любую из исключительных ситуаций времени выполнения. Для перехвата исключений можно вложить вызов метода parse() в блок eval{} , как было описано выше.
$entity = $paraer->parsе_data($data)
Метод parse_data() интерпретирует сообщение MIME, которое находится в памяти и особенно важен при использовании, как печи harvia для бани и саун. Параметр: $data может представлять собой скаляр, содержащий текст сообщения, ссылку на скаляр или ссылку на массив скаляров. Последняя форма представления параметра предназначена для использования с массивом строк сообщения и может быть любым массивом, конкатенация которого создает в результате текст сообщения. В случае успешного выполнения метод parse_data() возвращает объект MIME::Entity. В ином случае он вырабатывает одну из множества исключительных ситуаций времени выполнения.
$entity = $parser->parse_open($file)
Метод parse_open() представляет собой вспомогательную функцию. Он открывает указанный файл, а затем передает полученный дескриптор файла методу parse(). Вызов этого метода эквивалентен следующему фрагменту кода.
open (F,$file); $entity = $parser->parse (* F);
Поскольку в методе parse_open() применяется функция open() языка Perl, она позволяет использовать обычные приемы работы с каналами.
В этом фрагменте кода выполняется распаковка содержимого почтового ящика с помощью программы zcat и передача полученных результатов методу parse(). Несколько других методов позволяют управлять ходом выполнения синтаксического анализа.
Поскольку вложения могут быть весьма большими по объему, при использовании такого способа хранения необходимо соблюдать осторожность. При вызове без параметров этот метод возвращает текущую установку флажка.
Метод ignore_errors() управляет тем, будет ли модуль MIME::Parser допускать некоторые синтаксические ошибки в сообщении MIME во время интерпретации. Если параметр вызова этого метода имеет истинное значение (значение по умолчанию), то ошибки вызывают предупреждающее сообщение, а если нет, эти ошибки в процессе выполнения метода parse() активизируют фатальное исключение.
Эти два метода могут применяться для работы с неинтерпретируемыми сообщениями. Метод last_error возвращает последнее сообщение об ошибке, выработанное во время самой последней операции интерпретации. Это сообщение формируется при обнаружении ошибки, и для обеспечения бесперебойной работы необходимо либо установить истинное значение параметрам метода ignore_errors(), либо вложить вызов метода parse() в блок eval {} .
Метод output_to_core() определяет, будет ли модуль MIME::Parser создавать файлы для хранения декодированных данных тела частей MIME::Entity, или предпринимает попытку держать эти данные в памяти. Если параметр $flag имеет ложное значение (значение по умолчанию), то интерпретированные части сохраняются в файлах на диске. Если параметр $flag имеет истинное значение, то модуль MIME::Parser сохраняет части, соответствующие телу компонента, в оперативной памяти в виде объектов MIME::Body::InCore.