---
name: "Mail::Mbox::MessageParser::Perl"
section: "3pm"
platform: "linux"
package: "libmail-mbox-messageparser-perl"
version: "1.5111-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Mail::Mbox::MessageParser::Perl"
---

# Mail::Mbox::MessageParser::Perl(3pm)

A Perl-based mbox folder reader

## NAME

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

## 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;
  }
```

## 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.

### METHODS AND FUNCTIONS

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.

## BUGS

No known bugs.

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

## AUTHOR

David Coppit \<david@coppit.org\>.

## LICENSE

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

## 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.

## SEE ALSO

Mail::Mbox::MessageParser
