oracular (3) Perl::Critic::Policy::Community::ConditionalDeclarations.3pm.gz

Provided by: libperl-critic-community-perl_1.0.3-1_all bug

NAME

       Perl::Critic::Policy::Community::ConditionalDeclarations - Don't declare variables conditionally

DESCRIPTION

       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;           # 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.

AFFILIATION

       This policy is part of Perl::Critic::Community.

CONFIGURATION

       This policy is not configurable except for the standard options.

AUTHOR

       Dan Book, "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.

SEE ALSO

       Perl::Critic

perl v5.34.0                                       Perl::Critic::Policy::Community::ConditionalDeclarations(3pm)