after 'file' => sub { my $self = shift; open my $FILE, "<", $self->{file}; HEADER: while ( <$FILE> ){ my ( $tag, $value ) = $_ =~ /\s*(\w+)\s(.+)/; my $accessor = lc $tag; #create an accessor for each header value has $accessor => ( is =>'ro' ); $self->{$accessor} = $value; } close $FILE; };