X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSub%2FQuote.pm;h=8016b06f15886455912df4305a61337ebe7859ef;hb=350f2de6ebd85fd6fc5699c0773e6737756bac36;hp=3c12c61acf908e6554b1ee3d5f0a83e050934ad3;hpb=2b4634dae31b729fe11a6ebf5b032ef01a113452;p=gitmo%2FMoo.git diff --git a/lib/Sub/Quote.pm b/lib/Sub/Quote.pm index 3c12c61..8016b06 100644 --- a/lib/Sub/Quote.pm +++ b/lib/Sub/Quote.pm @@ -9,7 +9,7 @@ use B 'perlstring'; use Scalar::Util qw(weaken); use base qw(Exporter); -our $VERSION = '1.003000'; +our $VERSION = '1.003001'; $VERSION = eval $VERSION; our @EXPORT = qw(quote_sub unquote_sub quoted_from_sub); @@ -59,7 +59,7 @@ sub quote_sub { (ref($_[-1]) eq 'HASH' and ref($_[-2]) eq 'HASH') ? pop : {}; - my $captures = pop if ref($_[-1]) eq 'HASH'; + my $captures = ref($_[-1]) eq 'HASH' ? pop : undef; undef($captures) if $captures && !keys %$captures; my $code = pop; my $name = $_[0]; @@ -121,6 +121,7 @@ sub CLONE { } 1; +__END__ =head1 NAME @@ -167,7 +168,10 @@ C<$name> is the subroutine where the coderef will be installed. C<$code> is a string that will be turned into code. C<\%captures> is a hashref of variables that will be made available to the -code. See the L's C for an example using captures. +code. The keys should be the full name of the variable to be made available, +including the sigil. The values should be references to the values. The +variables will contain copies of the values. See the L's +C for an example using captures. =head3 options @@ -287,3 +291,5 @@ See L for authors. =head1 COPYRIGHT AND LICENSE See L for the copyright and license. + +=cut