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

FreeBSD Manual Pages

  
 
  

home | help
Perl::Critic::PoliPerlUseriContributed:PerluDocumentationireCheckedSyscalls(3)

NAME
       Perl::Critic::Policy::InputOutput::RequireCheckedSyscalls - Return
       value of	flagged	function ignored.

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

DESCRIPTION
       This performs identically to InputOutput::RequireCheckedOpen/Close
       except that this	is configurable	to apply to any	function, whether core
       or user-defined.

       If your module uses Fatal, Fatal::Exception, or autodie then any
       functions wrapped by those modules will not trigger this	policy.	 For
       example:

	   use Fatal qw(open);
	   open	my $fh,	$filename;  # no violation
	   close $fh;		    # yes violation

	   use autodie;
	   open	$filehandle, $mode, $filename;	 # no violation

       Currently, autodie is not properly treated as a pragma; its lexical
       effects aren't taken into account.

CONFIGURATION
       This policy watches for a configurable list of function names.  By
       default,	it applies to "open", "print", "say" and "close".  You can
       override	this to	set it to a different list of functions	with the
       "functions" and "exclude_functions" settings.  To do this, put entries
       in a .perlcriticrc file like this:

	   [InputOutput::RequireCheckedSyscalls]
	   functions = open opendir read readline readdir close	closedir

       We have defined a few shortcuts for creating this list

	   [InputOutput::RequireCheckedSyscalls]
	   functions = :defaults opendir readdir closedir

	   [InputOutput::RequireCheckedSyscalls]
	   functions = :builtins

	   [InputOutput::RequireCheckedSyscalls]
	   functions = :all

       The ":builtins" shortcut	above represents all of	the builtin functions
       that have error conditions (about 65 of them, many of them rather
       obscure).

       You can require checking	all builtins except "print" by combining the
       "functions" and "exclude_functions":

	   [InputOutput::RequireCheckedSyscalls]
	   functions = :builtins
	   exclude_functions = print

       This is a lot easier to read than the alternative.

       The ":all" is the insane	case: you must check the return	value of EVERY
       function	call, even "return" and	"exit".	 Yes, this "feature" is
       overkill	and is wasting CPU cycles on your computer by just existing.
       Nyah nyah.  I shouldn't code after midnight.

CREDITS
       Initial development of this policy was supported	by a grant from	the
       Perl Foundation.

       This policy module is based heavily on policies written by Andrew Moore
       <amoore@mooresystems.com>.

AUTHOR
       Chris Dolan <cdolan@cpan.org>

COPYRIGHT
       Copyright (c) 2007-2011 Chris Dolan.  Many 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.24.1	  Perl::Critic::Policy::InputOutput::RequireCheckedSyscalls(3)

NAME | AFFILIATION | DESCRIPTION | CONFIGURATION | CREDITS | AUTHOR | COPYRIGHT

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

home | help