Mail-Message
view release on metacpan or search on metacpan
lib/Mail/Message/Field.pm view on Meta::CPAN
{ my $thing = shift;
# get (folded) data
my $string = @_ ? shift : $thing->foldedBody;
# remove comments
my $r = '';
my $in_dquotes = 0;
my $open_paren = 0;
my @s = split m/([()"])/, $string;
while(@s)
{ my $s = shift @s;
if(CORE::length($r)&& substr($r, -1) eq "\\") { $r .= $s }
elsif($s eq '"') { $in_dquotes = not $in_dquotes; $r .= $s }
elsif($s eq '(' && !$in_dquotes) { $open_paren++ }
elsif($s eq ')' && !$in_dquotes) { $open_paren-- }
elsif($open_paren) {} # in comment
else { $r .= $s }
}
lib/Mail/Message/Field/Fast.pm view on Meta::CPAN
if @_;
$self->unfold($self->[1]);
}
sub foldedBody($)
{ my ($self, $body) = @_;
if(@_==2) { $self->[1] = $body }
else { $body = $self->[1] }
wantarray ? (split m/^/, $body) : $body;
}
# For performance reasons only
sub print(;$)
{ my $self = shift;
my $fh = shift || select;
$fh->print($self->[0].':'.$self->[1]);
$self;
}
( run in 2.011 seconds using v1.01-cache-2.11-cpan-71847e10f99 )