Compress-SelfExtracting
view release on metacpan or search on metacpan
SelfExtracting.pm view on Meta::CPAN
type => 'LZW',
op => 'eval',
uu => 1);
};
sub compress
{
my $data = shift;
my %o = @_;
@O{keys %o} = values %o;
my $cdata = &{"Compress::SelfExtracting::$O{type}::compress"}($data, \%O);
if ($O{uu}) {
$cdata = pack 'u', $cdata;
}
if ($O{standalone}) {
my $sa = &{"Compress::SelfExtracting::$O{type}::standalone"}(\%O);
return $sa.$cdata;
} else {
return "use Compress::SelfExtracting::Filter "
.join(', ', map { "$_ => '$O{$_}'" }
grep!/decompress|file|data/,keys %O).";\n"
.md5_hex($data)."\n$cdata\n";
}
}
sub decompress
{
my $data = shift;
my %o = @_;
@O{keys %o} = values %o;
if ($data =~ /^([0-9a-f]+)\n(.*)/s) {
if ($O{uu}) {
( run in 0.560 second using v1.01-cache-2.11-cpan-454fe037f31 )