Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
y::ControlStructures::UseriContributedEPerlsDocumentationAndUntilConditions(3)dUntilConditions(3)

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.

y::ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions(3)

NAME | AFFILIATION | DESCRIPTION | CONFIGURATION | SEE ALSO | AUTHOR | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Perl::Critic::Policy::ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help