Perl::Critic::Policy::BuiltinFunctions::ProhibitLvalueSubstr - Use 4-argument substr
instead of writing substr($foo, 2, 6) = $bar
.
This Policy is part of the core Perl::Critic distribution.
Conway discourages the use of substr()
as an lvalue, instead recommending that the 4-argument version of substr()
be used instead.
substr($something, 1, 2) = $newvalue; # not ok
substr($something, 1, 2, $newvalue); # ok
The four-argument form of substr()
was introduced in Perl 5.005. This policy does not report violations on code which explicitly specifies an earlier version of Perl (e.g. use 5.004;
).
This Policy is not configurable except for the standard options.
"substr" in perlfunc (or perldoc -f substr
).
"4th argument to substr" in perl5005delta
Graham TerMarsch <graham@howlingfrog.com>
Copyright (c) 2005-2011 Graham TerMarsch. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.