NAME
Perl::Critic::Policy::ControlStructures::ProhibitCascadingIfElse
DESCRIPTION
Long if-elsif
chains are hard to digest, especially if they are longer than a single page or screen. If testing for equality, use a hash lookup instead. See Switch for another approach.
if ($condition1) { #ok
$foo = 1;
}
elseif ($condition2) { #ok
$foo = 2;
}
elsif ($condition3) { #ok
$foo = 3;
}
elsif ($condition4) { #too many!
$foo = 4;
}
else{ #ok
$foo = $default;
}
CONSTRUCTOR
This policy accepts an additional key-value pair in the new
method. The key should be max_elsif
and the value should be an integer indicating the maximum number of elsif
alternatives to allow. The default is 2. When using the Perl::Critic engine, these can be configured in the .perlcriticrc file like this:
[ControlStructures::ProhibitCascadingIfElse]
max_elsif = 3
AUTHOR
Jeffrey Ryan Thalhammer <thaljef@cpan.org>
COPYRIGHT
Copyright (c) 2005-2006 Jeffrey Ryan Thalhammer. All rights reserved.
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.