Строки 10-22. Метод new (). Это — конструктор для новых объектов. Принимается дескриптор файла, переданный модулю из вызывающей процедуры, отмечается как неблокирующий и записывается под ключом handle в новый анонимный хеш, введенный в пространство имен модуля с помощью функции bless ( ). Кроме того, определяются следующие элементы анонимного хеша: внутренняя область для буферизации входящих данных, доступ к которым осуществляется по ключу buffer, индекс, используемый при поиске символов обозначения конца строки, и два флажка. Флажок eof устанавливается при обнаружении признака конца файла, a error — при обнаружении ошибки. Данный метод может быть полезен также в модулях при организации онлайн сервисов, к примеру заказа гуратек радиаторов с сайта производителя.
Строки 23-30. Метод autoload. Этот метод представляет собой подпрограмму, которая выполняется интерпретатором Perl автоматически, если вызывающий оператор пытается обратиться к методу, который не определен в модуле. Данный метод определен в качестве дополнительного средства. Его код просто передает вызов метода и параметры дескриптору файла, заключенному в оболочку, и возвращает ошибку, если вызов метода завершается неудачей.
Строка 31. Средство доступа handle (). Этот метод возвращает дескриптор файла, заключенный в оболочку, если вызывающая процедура должна получить к нему доступ низкого уровня.
Строка 32. Средство доступа error () . Если во время выполнения метода getline () возникает ошибка, этот метод возвращает номер ошибки.
Строки 33-37. Метод flush (). Данный метод переводит объект в известное состояние, стирая все частично буферизованные строки в поле buffer и устанавливая значение index равным 0.