++ed by:
ADAMJS ARJONES ARPI AYOUNG AZAWAWI

38 PAUSE user(s)
22 non-PAUSE user(s).

Jeffrey Ryan Thalhammer

NAME

Perl::Critic::Policy::ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions - Don't use operators like not, !~, and le within until and unless.

AFFILIATION

This Policy is part of the core Perl::Critic distribution.

DESCRIPTION

    until ($foo ne 'blah') {          #not ok
        ...
    }

    while ($foo eq 'blah') {          #ok
        ...
    }

A number of people have problems figuring out the meaning of doubly negated expressions. unless and until are both negative constructs, so any negative (e.g. !~) or reversible operators (e.g. le) included in their conditional expressions are double negations. Conway considers the following operators to be difficult to understand within unless and until:

  ! not
  !~ ne !=
  <   >   <=  >=  <=>
  lt  gt  le  ge  cmp

CONFIGURATION

This Policy is not configurable except for the standard options.

SEE ALSO

Perl::Critic::Policy::ControlStructures::ProhibitUnlessBlocks

AUTHOR

Elliot Shank <perl@galumph.com>

COPYRIGHT

Copyright (c) 2007-2011 Elliot Shank.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license can be found in the LICENSE file included with this module.




Hosting generously
sponsored by Bytemark