/usr/share/perl5/Mail/Message/Field/Flex.pm is in libmail-box-perl 2.110-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | # Copyrights 2001-2014 by [Mark Overmeer].
# For other contributors see ChangeLog.
# See the manual pages for details on the licensing terms.
# Pod stripped from pm file by OODoc 2.01.
use strict;
use warnings;
package Mail::Message::Field::Flex;
use vars '$VERSION';
$VERSION = '2.110';
use base 'Mail::Message::Field';
use Carp;
sub new($;$$@)
{ my $class = shift;
my $args = @_ <= 2 || ! ref $_[-1] ? {}
: ref $_[-1] eq 'ARRAY' ? { @{pop @_} }
: pop @_;
my ($name, $body) = $class->consume(@_==1 ? (shift) : (shift, shift));
return () unless defined $body;
# Attributes preferably stored in array to protect order.
my $attr = $args->{attributes};
$attr = [ %$attr ] if defined $attr && ref $attr eq 'HASH';
push @$attr, @_;
$class->SUPER::new(%$args, name => $name, body => $body,
attributes => $attr);
}
sub init($)
{ my ($self, $args) = @_;
@$self{ qw/MMFF_name MMFF_body/ } = @$args{ qw/name body/ };
$self->comment($args->{comment})
if exists $args->{comment};
my $attr = $args->{attributes};
$self->attribute(shift @$attr, shift @$attr)
while @$attr;
$self;
}
#------------------------------------------
sub clone()
{ my $self = shift;
(ref $self)->new($self->Name, $self->body);
}
#------------------------------------------
sub length()
{ my $self = shift;
length($self->{MMFF_name}) + 1 + length($self->{MMFF_body});
}
#------------------------------------------
sub name() { lc shift->{MMFF_name}}
#------------------------------------------
sub Name() { shift->{MMFF_name}}
#------------------------------------------
sub folded(;$)
{ my $self = shift;
return $self->{MMFF_name}.':'.$self->{MMFF_body}
unless wantarray;
my @lines = $self->foldedBody;
my $first = $self->{MMFF_name}. ':'. shift @lines;
($first, @lines);
}
#------------------------------------------
sub unfoldedBody($;@)
{ my $self = shift;
$self->{MMFF_body} = $self->fold($self->{MMFF_name}, @_)
if @_;
$self->unfold($self->{MMFF_body});
}
#------------------------------------------
sub foldedBody($)
{ my ($self, $body) = @_;
if(@_==2) { $self->{MMFF_body} = $body }
else { $body = $self->{MMFF_body} }
wantarray ? (split /^/, $body) : $body;
}
#------------------------------------------
1;
|