METHODS

Constructors

TIEARRAY( 'Mail::Box::Tie::ARRAY', FOLDER )

Create the tie on an existing folder.

» Example: tie an array to a folder
 my $mgr   = Mail::Box::Manager->new;
 my $inbox = $mgr->new(folder => $ENV{MAIL});
 tie my(@inbox), 'Mail::Box::Tie::Array', ref $inbox, $inbox;

Tied Interface

$obj->DELETE

Flag a message to be removed. Be warned that the message stays in the folder, and is not removed before the folder is written.

» Example:
 delete $inbox[5];
 $inbox[5]->delete;   #same
$obj->FETCH( INDEX )

Get the message which is at the indicated location in the list of messages contained in this folder. Deleted messages will be returned as undef.

» Example:
 print $inbox[3];     # 4th message in the folder
 print @inbox[3,0];   # 4th and first of the folder
 print $inbox[-1];    # last message
$obj->FETCHSIZE

Return the total number of messages in a folder. This is called when the folder-array is used in scalar context, for instance.

» Example:
 if(@inbox > 10)    # contains more than 10 messages?
 my $nrmsgs = @inbox;
$obj->PUSH( MESSAGES )

Add MESSAGES to the end of the folder.

» Example:
    push @inbox, $newmsg;
$obj->STORE( INDEX, MESSAGE )

Random message replacement is not permitted --doing so would disturb threads etc. An error occurs if you try to do this. The only thing which is allowed is to store a message at the first free index at the end of the folder (which is also achievable with PUSH()).

» Example:
 $inbox[8] = $add;
 $inbox[-1] = $add;
 push @inbox, $add;
$obj->STORESIZE( LENGTH )

Sets all messages behind from LENGTH to the end of folder to be deleted.