ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Guard/Guard.pm
(Generate patch)

Comparing Guard/Guard.pm (file contents):
Revision 1.18 by root, Tue Jan 13 23:30:38 2009 UTC vs.
Revision 1.21 by root, Sun Jul 19 05:44:10 2009 UTC

13 chdir "/etc"; 13 chdir "/etc";
14 14
15 code_that_might_die_or_does_other_fun_stuff; 15 code_that_might_die_or_does_other_fun_stuff;
16 } 16 }
17 17
18 # create an object that, when the last reference to it is gone,
19 # invokes the given codeblock:
20 my $guard = guard { print "destroyed!\n" };
21 undef $guard; # probably destroyed here
22
18=head1 DESCRIPTION 23=head1 DESCRIPTION
19 24
20This module implements so-called "guards". A guard is something (usually 25This module implements so-called "guards". A guard is something (usually
21an object) that "guards" a resource, ensuring that it is cleaned up when 26an object) that "guards" a resource, ensuring that it is cleaned up when
22expected. 27expected.
37package Guard; 42package Guard;
38 43
39no warnings; 44no warnings;
40 45
41BEGIN { 46BEGIN {
42 $VERSION = '1.01'; 47 $VERSION = '1.021';
43 @ISA = qw(Exporter); 48 @ISA = qw(Exporter);
44 @EXPORT = qw(guard scope_guard); 49 @EXPORT = qw(guard scope_guard);
45 50
46 require Exporter; 51 require Exporter;
47 52

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines