logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Perl::Critic::Policy::BuiltinFunctions::ProhibitLvalueSubstr - Use 4-argument "substr" instead of writing

Affiliation

       This Policy is part of the core Perl::Critic distribution.

Author

       Graham TerMarsch <graham@howlingfrog.com>

Configuration

       This Policy is not configurable except for the standard options.

Description

       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;").

Name

       Perl::Critic::Policy::BuiltinFunctions::ProhibitLvalueSubstr - Use 4-argument "substr" instead of writing
       "substr($foo, 2, 6) = $bar".

See Also

       "substr" in perlfunc (or "perldoc -f substr").

       "4th argument to substr" in perl5005delta

See Also