Email::Thread(3) Use JWZ's mail threading algorithm with Email::Simple objects

VERSION

version 0.712

SYNOPSIS


use Email::Thread;
my $threader = Email::Thread->new(@messages);
$threader->thread;
dump_em($_,0) for $threader->rootset;
sub dump_em {
my ($self, $level) = @_;
debug (' \\-> ' x $level);
if ($self->message) {
print $self->message->header("Subject") , "\n";
} else {
print "[ Message $self not available ]\n";
}
dump_em($self->child, $level+1) if $self->child;
dump_em($self->next, $level) if $self->next;
}

DESCRIPTION

Strictly speaking, this doesn't really need Email::Simple objects. It just needs an object that responds to the same API. At the time of writing the list of classes with the Email::Simple API comprises just Email::Simple.

Due to how it's implemented, its API is an exact clone of Mail::Thread. Please see that module's documentation for API details. Just mentally substitute "Email::Thread" everywhere you see "Mail::Thread" and "Email::Thread::Container" where you see "Mail::Thread::Container".

THANKS

Simon Cozens (SIMON) for encouraging me to release it, and for Email::Simple and Mail::Thread.

Richard Clamp (RCLAMP) for the header patch.

AUTHOR

Iain Truskett <[email protected]>

COPYRIGHT AND LICENSE

This software is copyright (c) 2003 by Iain Truskett <[email protected]>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.