]> git.vpit.fr Git - perl/modules/indirect.git/blobdiff - lib/indirect.pm
Allow /^:?fatal$/ to specify the lethal behaviour
[perl/modules/indirect.git] / lib / indirect.pm
index 304e70a69b2295c77e143b66cd52c73c7cfb0f15..6cdf32af8d871ccb9999d67d7ddc5836c4acb3c3 100644 (file)
@@ -1,6 +1,6 @@
 package indirect;
 
-use 5.008;
+use 5.008001;
 
 use strict;
 use warnings;
@@ -11,13 +11,13 @@ indirect - Lexically warn about using the indirect object syntax.
 
 =head1 VERSION
 
-Version 0.20
+Version 0.21
 
 =cut
 
 our $VERSION;
 BEGIN {
- $VERSION = '0.20';
+ $VERSION = '0.21';
 }
 
 =head1 SYNOPSIS
@@ -35,7 +35,7 @@ BEGIN {
     }
     try { ... }; # warns
 
-    no indirect ':fatal';
+    no indirect ':fatal';    # or 'FATAL', or ':Fatal' ...
     if (defied $foo) { ... } # croaks, note the typo
 
     # From the command-line
@@ -72,7 +72,7 @@ BEGIN {
 
 =head1 METHODS
 
-=head2 C<< unimport [ hook => $hook | ':fatal' ] >>
+=head2 C<< unimport [ hook => $hook | ':fatal', 'FATAL', ... ] >>
 
 Magically called when C<no indirect @opts> is encountered.
 Turns the module on.
@@ -82,7 +82,7 @@ The policy to apply depends on what is first found in C<@opts> :
 
 =item *
 
-If it's the string C<':fatal'>, the compilation will croak on the first indirect syntax met.
+If it is a string that matches C</^:?fatal$/i>, the compilation will croak on the first indirect syntax met.
 
 =item *
 
@@ -105,7 +105,7 @@ sub unimport {
   my $arg = shift;
   if ($arg eq 'hook') {
    $hook = shift;
-  } elsif ($arg eq ':fatal') {
+  } elsif ($arg =~ /^:?fatal$/i) {
    $hook = sub { die msg(@_) };
   }
   last if $hook;
@@ -191,7 +191,7 @@ Hence C<my $x = new Class if 0> will be caught.
 
 =head1 DEPENDENCIES
 
-L<perl> 5.8.
+L<perl> 5.8.1.
 
 L<XSLoader> (standard since perl 5.006).