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

FreeBSD Manual Pages


home | help

       Perl::Critic::Policy::Miscellanea::ProhibitUnrestrictedNoCritic -
       Forbid a	bare "## no critic"

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

       A bare "## no critic" annotation	will disable all the active Policies.
       This creates holes for other, unintended	violations to appear in	your
       code.  It is better to disable only the particular Policies that	you
       need to get around.  By putting Policy names in a comma-separated list
       after the "## no	critic"	annotation, then it will only disable the
       named Policies.	Policy names are matched as regular expressions, so
       you can use shortened Policy names, or patterns that match several
       Policies. This Policy generates a violation any time that an
       unrestricted "##	no critic" annotation appears.

	   ## no critic			    # not ok
	   ## no critic	''		    # not ok
	   ## no critic	()		    # not ok
	   ## no critic	qw()		    # not ok

	   ## no critic	  (Policy1, Policy2)  #	ok
	   ## no critic	  (Policy1 Policy2)   #	ok (can	use spaces to separate)
	   ## no critic	qw(Policy1 Policy2)   #	ok (the	preferred style)

       Unfortunately, Perl::Critic is very sloppy about	parsing	the Policy
       names that appear after a "##no critic" annotation.  For	example, you
       might be	using one of these broken syntaxes...

	   ## no critic	Policy1	Policy2
	   ## no critic	'Policy1, Policy2'
	   ## no critic	"Policy1, Policy2"
	   ## no critic	"Policy1", "Policy2"

       In all of these cases, Perl::Critic will	silently disable all Policies,
       rather than just	the ones you requested.	 But if	you use	the
       "ProhibitUnrestrictedNoCritic" Policy, all of these will	generate
       violations.  That way, you can track them down and correct them to use
       the correct syntax, as shown above in the "DESCRIPTION".	 If you've
       been using the syntax that is shown throughout the Perl::Critic
       documentation for the last few years, then you should be	fine.

       This Policy is not configurable except for the standard options.

       Jeffrey Ryan Thalhammer <>

       Copyright (c) 2008-2011 Imaginative Software Systems.  All rights

       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 v5.24.1Perl::Critic::Policy::Miscellanea::ProhibitUnrestrictedNoCritic(3)


Want to link to this manual page? Use this URL:

home | help