Ricardo SIGNES > Perl-Critic-Lax > Perl::Critic::Policy::Lax::ProhibitComplexMappings::LinesNotStatements

Download:
Perl-Critic-Lax-0.010.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.010   Source  

NAME ^

Perl::Critic::Policy::Lax::ProhibitComplexMappings::LinesNotStatements - prohibit multiline maps, not multistatement maps

VERSION ^

version 0.010

DESCRIPTION ^

Yes, yes, don't go nuts with map and use it to implement the complex multi-pass fnordsort algorithm. But, come on, guys! What's wrong with this:

  my @localparts = map { my $addr = $_; $addr =~ s/\@.+//; $addr } @addresses;

Nothing, that's what!

The assumption behind this module is that while the above is okay, the bellow is Right Out:

  my @localparts = map {
    my $addr = $_;
    $addr =~ s/\@.+//;
    $addr
  } @addresses;

Beyond the fact that it's really ugly, it's just a short step from there to a few included loop structures and then -- oops! -- a return statement. Seriously, people, they're called subroutines. We've had them since Perl 3.

AUTHOR ^

Ricardo Signes <rjbs@cpan.org>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2013 by Ricardo Signes <rjbs@cpan.org>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: