#use strict; # debugging only
use 5.003_90; # ->can, for my $var
-$autouse::VERSION = '1.01';
+$autouse::VERSION = '1.02';
$autouse::DEBUG ||= 0;
vet_import $module;
local $Exporter::ExportLevel = $Exporter::ExportLevel + 1;
# $Exporter::Verbose = 1;
- return $module->import(map { (my $f = $_) =~ s/\(.*?\)$// } @_);
+ return $module->import(map { (my $f = $_) =~ s/\(.*?\)$//; $f } @_);
}
# It is not loaded: need to do real work.
die if $@;
vet_import $module;
}
+ no warnings 'redefine';
*$closure_import_func = \&{"${module}::$closure_func"};
print "autousing $module; "
."imported $closure_func as $closure_import_func\n"
Using C<autouse> will move important steps of your program's execution
from compile time to runtime. This can
-=over
+=over 4
=item *