Perl::Critic::Policy::Community::ConditionalDeclarations - Don't declare variables conditionally
It is possible to add a postfix condition to a variable declaration, like my $foo = $bar if $baz. However, it is unclear (and undefined) if the variable will be declared when the condition is not met. Instead, declare the variable and then assign to it conditionally, or use the ternary operator to assign a value conditionally.
my $foo = $bar if $baz
my $foo = $bar if $baz; # not ok my ($foo, $bar) = @_ unless $baz; # not ok our $bar = $_ for 0..10; # not ok my $foo; $foo = $bar if $baz; # ok my $foo = $baz ? $bar : undef; # ok
This policy is a subclass of the core policy Perl::Critic::Policy::Variables::ProhibitConditionalDeclarations, and performs the same function but in the community theme.
community
This policy is part of Perl::Critic::Community.
This policy is not configurable except for the standard options.
Dan Book, dbook@cpan.org
dbook@cpan.org
Copyright 2015, Dan Book.
This library is free software; you may redistribute it and/or modify it under the terms of the Artistic License version 2.0.
Perl::Critic
To install Perl::Critic::Community, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Perl::Critic::Community
CPAN shell
perl -MCPAN -e shell install Perl::Critic::Community
For more information on module installation, please visit the detailed CPAN module installation guide.