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::NamingConventions::ProhibitAmbiguousNames - Don't use vague variable or subroutine

Affiliation

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

Author

       Chris Dolan <cdolan@cpan.org>

Bugs

       Currently this policy checks the entire variable and subroutine name, not parts of the name.  For
       example, it catches $last but not $last_record.  Hopefully future versions will catch both cases.

       Some variable statements will be false positives if they have assignments where the right hand side uses
       forbidden names.  For example, in this case the "last" incorrectly triggers a violation.

           my $previous_record = $Foo::last;

Configuration

       The default list of forbidden words is:

           abstract bases close contract last left no record right second set

       This list can be changed by giving a value for "forbid" of a series of forbidden words separated by
       spaces.

       For example, if you decide that "bases" is an OK name for variables (e.g.  in bioinformatics), then put
       something like the following in "$HOME/.perlcriticrc":

           [NamingConventions::ProhibitAmbiguousNames]
           forbid = last set left right no abstract contract record second close

Description

       Conway lists a collection of English words which are highly ambiguous as variable or subroutine names.
       For example, $last can mean previous or final.

       This policy tests against a list of ambiguous words for variable names.

Name

       Perl::Critic::Policy::NamingConventions::ProhibitAmbiguousNames - Don't use vague variable or subroutine
       names like 'last' or 'record'.

See Also