## name With if
## failures 4
## cut

my $foo = 1 if $bar;
our $foo = 1 if $bar;

my ($foo, $baz) = @list if $bar;
our ($foo, $baz) = 1 if $bar;


#-----------------------------------------------------------------------------

## name With unless
## failures 4
## cut

my $foo = 1 unless $bar;
our $foo = 1 unless $bar;

my ($foo, $baz) = @list unless $bar;
our ($foo, $baz) = 1 unless $bar;


#-----------------------------------------------------------------------------

## name With while
## failures 4
## cut

my $foo = 1 while $bar;
our $foo = 1 while $bar;

my ($foo, $baz) = @list while $bar;
our ($foo, $baz) = 1 while $bar;

#-----------------------------------------------------------------------------

## name With for
## failures 4
## cut

my $foo = 1 for @bar;
our $foo = 1 for @bar;

my ($foo, $baz) = @list for @bar;
our ($foo, $baz) = 1 for @bar;

#-----------------------------------------------------------------------------

## name With foreach
## failures 4
## cut

my $foo = 1 foreach @bar;
our $foo = 1 foreach @bar;

my ($foo, $baz) = @list foreach @bar;
our ($foo, $baz) = 1 foreach @bar;

#-----------------------------------------------------------------------------

## name Passing cases
## failures 0
## cut

for my $foo (@list) { do_something() }
foreach my $foo (@list) { do_something() }
while (my $foo $condition) { do_something() }
until (my $foo = $condition) { do_something() }
unless (my $foo = $condition) { do_something() }

# these are terrible uses of "if" but do not violate the policy
my $foo = $hash{if};
my $foo = $obj->if();

#-----------------------------------------------------------------------------

## name local is exempt
## failures 0
## cut

local $foo = $bar if $baz;
local ($foo) = $bar if $baz;
local $foo = $bar unless $baz;
local ($foo) = $bar unless $baz;
local $foo = $bar until $baz;
local ($foo) = $bar until $baz;
local ($foo, $bar) = 1 foreach @baz;
local ($foo, $bar) = 1 for @baz;

##############################################################################
#      $URL: http://perlcritic.tigris.org/svn/perlcritic/trunk/distributions/Perl-Critic/t/Variables/ProhibitConditionalDeclarations.run $
#     $Date: 2009-01-24 17:44:43 -0800 (Sat, 24 Jan 2009) $
#   $Author: clonezone $
# $Revision: 3059 $
##############################################################################

# Local Variables:
#   mode: cperl
#   cperl-indent-level: 4
#   fill-column: 78
#   indent-tabs-mode: nil
#   c-indentation-style: bsd
# End:
# ex: set ts=8 sts=4 sw=4 tw=78 ft=perl expandtab shiftround :