07.02.2013 12:55, Гришаев Анатолий пишет:
03.02.2013 1:18, Ivan Petrov пишет:
то что Монс предложил (и я это пробовал ДО того как задал вопрос в
рассылку) у меня дает такой варнинг
Name "main::b" used only once: possible typo at test.pl line 11.
Name "main::a" used only once: possible typo at test.pl line 11.
А чем не нравиться
no warnings 'once';
@b = my_sort { $a <=> $b } 1, 3, 2;
?
В конце концов можно пойти хакерским путем
В пакете
==============
package B;
use strict;
use warnings;
use Exporter ();
sub import{
my $c = caller;
no strict 'refs';
undef ${ join "::", $c, 'a' };
undef ${ join "::", $c, 'b' };
goto &Exporter::import;
}
sub my_sort(&@){
my ( $cmp, @args ) = @_;
...
}
BEGIN {
our @EXPORT_OK = qw(my_sort);
}
}
=============
А в самом скрипте уже
=============
use strict;
use warnings;
use B qw(my_sort);
my @b = my_sort { $a <=> $b } 1, 3, 2;
=============
Тоже не вызывает warnings 'once';
--
С уважением Анатолий.
--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org