Эта подпрограмма отвечает за синтаксический анализ входящих документов HTML. Подпрограмма process_document () записывает созданное дерево синтаксического анализа HTML, если таковое успешно создано, в глобальной переменной $html_tree, объявленной здесь. После завершения работы метода request () проверяется состояние возвращенного объекта http::Response и вызывается функция die с описательным сообщением об ошибке, если запрос потерпел неудачу по каким-то причинам.
4) Форматирование и вывод кода HTML. Если затребованный документ представляет собой код HTML, это значит, что подпрограмма proeess_document () выполнила его синтаксический анализ и оставила созданное дерево в переменной $html_tree. Выполняется проверка того, является ли дерево непустым. Если это так, вызывается метод eof () объекта дерева для указания синтаксическому анализатору, чтобы он окончил работу, и дерево передается вновь созданному объекту HTML::FormatText для создания отформатированной строки, которая немедленно выводится на стандартное устройство вывода. После этого объект HTML::FormatText больше не нужен, поэтому вызывается его метод delete ().
Как будет показано ниже, подпрограмма process_document () немедленно выводит на стандартное устройство вывода все документы, отличные от документов HTML, поэтому для обработки таких документов не нужны какие-либо дальнейшие действия.
5) Подпрограмма process_document (). Объект lwp::UserAgent вызывает эту подпрограмму обратного вызова с тремя параметрами, состоящими из загруженных данных текущего объекта HTTP::Response и объекта LWP:: Protocol.