Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Perl::Critic::Policy::U

NAME
       Perl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals
       - Always	use single quotes for literal strings.

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

DESCRIPTION
       Don't use double-quotes or "qq//" if your string	doesn't	require
       interpolation.  This saves the interpreter a bit	of work	and it lets
       the reader know that you	really did intend the string to	be literal.

	   print "foobar";     #not ok
	   print 'foobar';     #ok
	   print qq/foobar/;   #not ok
	   print q/foobar/;    #ok

	   print "$foobar";    #ok
	   print "foobar\n";   #ok
	   print qq/$foobar/;  #ok
	   print qq/foobar\n/; #ok

	   print qq{$foobar};  #preferred
	   print qq{foobar\n}; #preferred

       Use of double-quotes might be reasonable	if the string contains single
       quote (') characters:

	   print "it's me";    # ok, if	configuration flag set

CONFIGURATION
       The types of quoting styles to exempt from this policy can be
       configured via the "allow" option.  This	must be	a whitespace-delimited
       combination of some or all of the following styles: "qq{}", "qq()",
       "qq[]", and "qq//".

       This is useful because some folks have configured their editor to apply
       special syntax highlighting within certain styles of quotes.  For
       example,	you can	tweak "vim" to use SQL highlighting for	everything
       that appears within "qq{}" or "qq[]" quotes.  But if those strings are
       literal,	Perl::Critic will complain.  To	prevent	this, put the
       following in your .perlcriticrc file:

	   [ValuesAndExpressions::ProhibitInterpolationOfLiterals]
	   allow = qq{}	qq[]

       The flag	"allow_if_string_contains_single_quote"	permits	double-quoted
       strings if the string contains a	single quote (') character.  It
       defaults	to off;	to turn	it on put the following	in your	.perlcriticrc
       file:

	   [ValuesAndExpressions::ProhibitInterpolationOfLiterals]
	   allow_if_string_contains_single_quote = 1

SEE ALSO
       Perl::Critic::Policy::ValuesAndExpressions::RequireInterpolationOfMetachars

AUTHOR
       Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>

COPYRIGHT
       Copyright (c) 2005-2011 Imaginative Software Systems.  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.

Perl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals(3)

Perl::Critic::Policy::U | NAME | AFFILIATION | DESCRIPTION | CONFIGURATION | SEE ALSO | AUTHOR | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Perl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help