logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Mail::Mbox::MessageParser::Perl - A Perl-based mbox folder reader

Author

       David Coppit <david@coppit.org>.

Bugs

       No known bugs.

       Contact david@coppit.org for bug reports and suggestions.

Description

       This module implements a Perl-based mbox folder reader.  Users must not instantiate this class
       directly--use Mail::Mbox::MessageParser instead. The base MessageParser module will automatically manage
       the use of faster implementations if they can be used.

   METHODSANDFUNCTIONS
       The following methods and functions are specific to the Mail::Mbox::MessageParser::Perl package. For
       additional inherited ones, see the Mail::Mbox::MessageParser documentation.

       $ref = new( { 'file_name' => <mailbox file name>, 'file_handle' => <mailbox file handle> });
               <file_name> - The full filename of the mailbox
               <file_handle> - An opened file handle for the mailbox

           The  constructor for the class takes two parameters. The optional file_name parameter is the filename
           of the mailbox. The required file_handle argument is the opened file handle to the mailbox.

           Returns a reference to a Mail::Mbox::MessageParser object, or a string describing the error.

       end_of_file()reset()read_next_email()
           These methods are overridden in this subclass of Mail::Mbox::MessageParser.

History

       This  code  was  originally  part  of the grepmail distribution. See http://grepmail.sf.net/ for previous
       versions of grepmail which included early versions of this code.

License

       This code is distributed under the GNU General Public License (GPL) Version 2.  See the file  LICENSE  in
       the distribution for details.

Name

       Mail::Mbox::MessageParser::Perl - A Perl-based mbox folder reader

See Also

       Mail::Mbox::MessageParser

perl v5.36.0                                       2023-08-06               Mail::Mbox::MessageParser::Perl(3pm)

Synopsis

         #!/usr/bin/perl

         use Mail::Mbox::MessageParser;

         my $filename = 'mail/saved-mail';
         my $filehandle = new FileHandle($filename);

         my $folder_reader =
           new Mail::Mbox::MessageParser( {
             'file_name' => $filename,
             'file_handle' => $filehandle,
           } );

         die $folder_reader unless ref $folder_reader;

         # Any newlines or such before the start of the first email
         my $prologue = $folder_reader->prologue;
         print $prologue;

         # This is the main loop. It's executed once for each email
         while(!$folder_reader->end_of_file());
         {
           my $email = $folder_reader->read_next_email();
           print $$email;
         }

See Also