sub unimport {
my $strict_arg = grep /^:strict$/, @_;
- carp 'no evil; interpreted as no evil ":strict". This will change in a future version of Acme::Evil' unless $strict_arg;
- $strict = 1; # To be changed when other modes are implemented
+ my $disable_arg = grep /^:disable/, @_;
+ carp 'no evil; interpreted as no evil ":strict". This will change in a future version of Acme::Evil' unless $strict_arg || $disable_arg;
+ $strict = 1 unless $disable_arg; # To be changed when other modes are implemented
+ $strict = 0 if $disable_arg;
if ($strict && %tainted) {
croak "Evil module already loaded. Cannot enforce \"no evil ':strict'\"";
}
anywhere in the program. Throws an exception if an evil module is
loaded, whether at the moment of calling this pragma or in the future.
+=item no B<evil> ':disable';
+
+Removes the effect of any previous C<no B<evil> ':strict'>. In other
+words evil modules will now be allowed to be loaded.
+
=item no B<evil> ':intermediate'; (TODO)
Not yet implemented. The calling module cannot function properly if it