Blame t/lib/Config/IniFiles/Slurp.pm

Packit 7f3e4a
package Config::IniFiles::Slurp;
Packit 7f3e4a
Packit 7f3e4a
use strict;
Packit 7f3e4a
use warnings;
Packit 7f3e4a
Packit 7f3e4a
use File::Spec;
Packit 7f3e4a
Packit 7f3e4a
use base 'Exporter';
Packit 7f3e4a
Packit 7f3e4a
use vars (qw(@EXPORT_OK));
Packit 7f3e4a
Packit 7f3e4a
@EXPORT_OK = (qw( bin_slurp slurp ));
Packit 7f3e4a
Packit 7f3e4a
=head2 slurp()
Packit 7f3e4a
Packit 7f3e4a
Reads the entire file.
Packit 7f3e4a
Packit 7f3e4a
=cut
Packit 7f3e4a
Packit 7f3e4a
Packit 7f3e4a
sub slurp
Packit 7f3e4a
{
Packit 7f3e4a
    my $filename = shift;
Packit 7f3e4a
Packit 7f3e4a
    open my $in, '<', $filename
Packit 7f3e4a
        or die "Cannot open '$filename' for slurping - $!";
Packit 7f3e4a
Packit 7f3e4a
    local $/;
Packit 7f3e4a
    my $contents = <$in>;
Packit 7f3e4a
Packit 7f3e4a
    close($in);
Packit 7f3e4a
Packit 7f3e4a
    return $contents;
Packit 7f3e4a
}
Packit 7f3e4a
Packit 7f3e4a
=head2 slurp()
Packit 7f3e4a
Packit 7f3e4a
Reads the entire file with binmode
Packit 7f3e4a
Packit 7f3e4a
=cut
Packit 7f3e4a
sub bin_slurp
Packit 7f3e4a
{
Packit 7f3e4a
    my $filename = shift;
Packit 7f3e4a
Packit 7f3e4a
    open my $in, '<', $filename
Packit 7f3e4a
        or die "Cannot open '$filename' for slurping - $!";
Packit 7f3e4a
Packit 7f3e4a
    binmode $in;
Packit 7f3e4a
    local $/;
Packit 7f3e4a
    my $contents = <$in>;
Packit 7f3e4a
Packit 7f3e4a
    close($in);
Packit 7f3e4a
Packit 7f3e4a
    return $contents;
Packit 7f3e4a
}
Packit 7f3e4a
Packit 7f3e4a
1;
Packit 7f3e4a