Perl::Critic::Policy::ControlStructures::ProhibitUnreachableCode man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

Perl::CritiPerl::Critic::Policy::ControlStructures::ProhibitUnreachableCode(3)

NAME
       Perl::Critic::Policy::ControlStructures::ProhibitUnreachableCode -
       Don't write code after an unconditional "die, exit, or next".

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

DESCRIPTION
       This policy prohibits code following a statement which unconditionally
       alters the program flow.	 This includes calls to "exit", "die",
       "return", "next", "last" and "goto".  Due to common usage, "croak" and
       "confess" from Carp are also included.

       Code is reachable if any of the following conditions are true:

       ·   Flow-altering statement has a conditional attached to it

       ·   Statement is on the right side of an operator "&&", "||", "//",
	   "and", "or", or "err".

       ·   Code is prefixed with a label (can potentially be reached via
	   "goto")

       ·   Code is a subroutine

EXAMPLES
	 # not ok

	 exit;
	 print "123\n";

	 # ok

	 exit if !$xyz;
	 print "123\n";

	 # not ok

	 for ( 1 .. 10 ) {
	     next;
	     print 1;
	 }

	 # ok

	 for ( 1 .. 10 ) {
	     next if $_ == 5;
	     print 1;
	 }

	 # not ok

	 sub foo {
	     my $bar = shift;
	     return;
	     print 1;
	 }

	 # ok

	 sub foo {
	     my $bar = shift;
	     return if $bar->baz();
	     print 1;
	 }

	 # not ok

	 die;
	 print "123\n";

	 # ok

	 die;
	 LABEL: print "123\n";

	 # not ok

	 croak;
	 do_something();

	 # ok

	 croak;
	 sub do_something {}

CONFIGURATION
       This Policy is not configurable except for the standard options.

SEE ALSO
       Perl::Critic::Policy::ControlStructures::ProhibitPostfixControls

AUTHOR
       Peter Guzis <pguzis@cpan.org>

COPYRIGHT
       Copyright (c) 2006-2011 Peter Guzis.  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 v5.14.Perl::Critic::Policy::ControlStructures::ProhibitUnreachableCode(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net