Unix/Linux Go Back    

CentOS 7.0 - man page for perl::critic::policy::inputoutput::prohibitreadlineinforloop (centos section 3)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


       Perl::Critic::Policy::InputOutput::ProhibitReadlineInForLoop - Write "while( $line = <>
       ){...}" instead of "for(<>){...}".

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

       Using the readline operator in a "for" or "foreach" loop is very slow.  The iteration list
       of the loop creates a list context, which causes the readline operator to read the entire
       input stream before iteration even starts.  Instead, just use a "while" loop, which only
       reads one line at a time.

	 for my $line ( <$file_handle> ){ do_something($line) }      #not ok
	 while ( my $line = <$file_handle> ){ do_something($line) }  #ok

       This Policy is not configurable except for the standard options.

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

       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 v5.16.3			  Perl::Critic::Policy::InputOutput::ProhibitReadlineInForLoop(3)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums

All times are GMT -4. The time now is 03:32 PM.