/
usr
/
share
/
doc
/
perl-Filter
/
examples
/
closure
/
/usr/share/doc/perl-Filter/examples/closure
mkdir
upload
Name
Size
Mode
Actions
Count.pm
471
0644
edit
dl
rm
Decompress.pm
626
0644
edit
dl
rm
Include.pm
617
0644
edit
dl
rm
Joe2Jim.pm
295
0644
edit
dl
rm
NewSubst.pm
673
0644
edit
dl
rm
Subst.pm
384
0644
edit
dl
rm
UUdecode.pm
1046
0644
edit
dl
rm
Edit:
/usr/share/doc/perl-Filter/examples/closure/UUdecode.pm
(1046B)
package Filter::UUdecode ; use Filter::Util::Call ; use strict ; use warnings ; our $VERSION = '1.00' ; sub import { my($self) = @_ ; my ($count) = 0 ; filter_add( sub { my ($status) ; while (1) { return $status if ($status = filter_read() ) <= 0; chomp ; ++ $count ; # Skip the begin line (if it is there) ($_ = ''), next if $count == 1 and /^begin/ ; # is this the last line? if ($_ eq " " or length $_ <= 1) { $_ = '' ; # If there is an end line, skip it too return $status if ($status = filter_read() ) <= 0 ; $_ = "\n" if /^end/ ; filter_del() ; return 1 ; } # uudecode the line $_ = unpack("u", $_) ; # return the uudecoded data return $status ; } }) } 1 ;
Save
cmd:
run