/
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/Include.pm
(617B)
package Include ; use Filter::Util::Call ; use IO::File ; use Carp ; sub import { my ($self) = shift ; my ($filename) = shift ; my $fh = new IO::File "<$filename" or croak "Cannot open file '$filename': $!" ; my $first_time = 1 ; my ($orig_filename, $orig_line) = (caller)[1,2] ; ++ $orig_line ; filter_add( sub { $_ = <$fh> ; if ($first_time) { $_ = "#line 1 $filename\n$_" ; $first_time = 0 ; } if ($fh->eof) { $fh->close ; $_ .= "#line $orig_line $orig_filename\n" ; filter_del() ; } 1 ; }) } 1 ;
Save
cmd:
run