Perl::Critic::Policy::ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters - Don't use quotes (', ", `) as delimiters for the quote-like operators.
'
"
`
This Policy is part of the core Perl::Critic distribution.
With the obvious exception of using single-quotes to prevent interpolation, using quotes with the quote-like operators kind of defeats the purpose of them and produces obfuscated code, causing problems for future maintainers and their editors/IDEs.
$x = q"q"; #not ok $x = q'q'; #not ok $x = q`q`; #not ok $x = qq"q"; #not ok $x = qr"r"; #not ok $x = qw"w"; #not ok $x = qx`date`; #not ok $x =~ m"m"; #not ok $x =~ s"s"x"; #not ok $x =~ tr"t"r"; #not ok $x =~ y"x"y"; #not ok $x =~ m'$x'; #ok $x =~ s'$x'y'; #ok $x = qr'$x'm; #ok $x = qx'finger foo@bar'; #ok
This policy has three options: single_quote_allowed_operators, double_quote_allowed_operators, and back_quote_allowed_operators, which control which operators are allowed to use each of ', ", ` as delimiters, respectively.
single_quote_allowed_operators
double_quote_allowed_operators
back_quote_allowed_operators
The values allowed for these options are a whitespace delimited selection of the m, q, qq, qr, qw, qx, s, tr, and y operators.
m
q
qq
qr
qw
qx
s
tr
y
By default, double quotes and back quotes (backticks) are not allowed as delimiters for any operators and single quotes are allowed as delimiters for the m, qr, qx, and s operators. These defaults are equivalent to having the following in your .perlcriticrc:
[ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters] single_quote_allowed_operators = m s qr qx double_quote_allowed_operators = back_quote_allowed_operators =
Michael Schwern
Elliot Shank <perl@galumph.com>
<perl@galumph.com>
Copyright (c) 2007-2010 Elliot Shank.
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.
To install Benchmark::Perl::Formance::Cargo, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Benchmark::Perl::Formance::Cargo
CPAN shell
perl -MCPAN -e shell install Benchmark::Perl::Formance::Cargo
For more information on module installation, please visit the detailed CPAN module installation guide.