NAME
   Email::Delete 2.001 - Delete Messages from Folders

SYNOPSIS
     use Email::Delete qw[delete_message];

     my $message_id = shift @ARGV;

     delete_messages from     => $ENV{MAIL},
                     matching => sub {
                         my $message = shift;
                         $message->header('Message-ID') =~ $message_id;
                     };

DESCRIPTION
   This software will delete messages from a given folder if the test
   returns true.

 delete_message
     delete_message from     => 'folder_name',
                    with     => 'My::Delete::Package',
                    matching => sub { return_true_for_delete() };

   "from" is a required parameter, a string containing the folder name to
   delete from. By default "Email::FolderType" is used to determine what
   package to use when deleting a message. To override the default, specify
   the "with" parameter. Your package's "delete_message" function will be
   called with the same arguments that "delete_message" from Email::Delete
   is called with.

   "matching" is a required argument. Its value is a code reference. If the
   anonymouse subroutine returns a true value, the current message is
   deleted. Each message is passed to the "matching" test in turn. The
   first and only argument to "matching" is an "Email::Simple" object
   representing the message.

   If you should ever want to stop processing a mailbox, just call "die"
   from your code reference. A proper deleting package will not delete mail
   until all the messages have been scanned. So if you throw an exception,
   your mail will be preserved and scanning will be aborted.

SEE ALSO
   Email::Simple, Email::Folder, Email::LocalDelivery, perl.

AUTHOR
   Casey West, <[email protected]>.

COPYRIGHT
     Copyright (c) 2004 Casey West.  All rights reserved.
     This module is free software; you can redistribute it and/or modify it
     under the same terms as Perl itself.