[Moscow.pm] Switch vs given

vividsnow vividsnow на gmail.com
Пт Апр 22 08:57:07 PDT 2016


возможно подойдет dispatch hash:

my %h = (
     type1 => sub { ... },
     type2 => sub { ... },
     ...
);
if (my $f = $h{$key}) { $f->() }
else { ... } # default

On 04/21/2016 03:10 PM, Nikolay Mishin wrote:
> Привет Moscow-PM
>
> может я повторяюсь, но что делать
>
> на
>
> use Switch;
> perlcritic жалуется
> Found use of Switch. This module is deprecated by the Perl 5 Porters (Find an alternative module) [Modules::ProhibitEvilModules]
>
> а на
>
> use v5.10.1;
> no warnings 'experimental::smartmatch';
> в версиях perl < 5.17 (travis тестирует все с 5.10 вот пример вывода https://travis-ci.org/mishin/Ftree-cpan/jobs/124726293)
> пишет
> Unknown warnings category 'experimental::smartmatch'
>
> и вот эта строка
> no if $] >= 5.017011, warnings => 'experimental::smartmatch';
> (http://blogs.perl.org/users/mike_b/2013/06/a-little-nicer-way-to-use-smartmatch-on-perl-518.html)
> http://www.effectiveperlprogramming.com/2013/06/experimental-features-now-warn-reaching-back-to-v5-10/
>
> тоже не помогает
>
> так как надо писать? if else?
>
>


Подробная информация о списке рассылки Moscow-pm