News-GnusFilter
view release on metacpan or search on metacpan
GnusFilter.pm view on Meta::CPAN
sub get_message {
state($msg); # static var trick
return $msg if $msg;
$msg = bless {}, ref $_[0] || $_[0];
# header
local $/ = '';
$msg->{HEADER_STRING} = <>;
chomp $msg->{HEADER_STRING};
for (split /\n(?!\s)/, $msg->{HEADER_STRING}) {
my($tag, $value) = /^([^\s:]+):\s*(.*)\s*\Z/s;
push @{ $msg->{HEADERS}{$tag} }, $value;
$tag =~ tr/-/_/;
$tag = uc($tag);
push @{ $msg->{$tag} }, $value;
}
( run in 1.396 second using v1.01-cache-2.11-cpan-364913b4093 )