NAME
Perl::Critic::Policy::InputOutput::RequireCheckedOpen - Write my $error = open $fh, $mode, $filename;
instead of open $fh, $mode, $filename;
.
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
The perl builtin I/O function open
returns a false value on failure. That value should always be checked to ensure that the open was successful.
my
$error
=
open
(
$filehandle
,
$mode
,
$filename
);
# ok
open
(
$filehandle
,
$mode
,
$filename
) or
die
"unable to open: $!"
;
# ok
open
(
$filehandle
,
$mode
,
$filename
);
# not ok
use
autodie;
open
$filehandle
,
$mode
,
$filename
;
# ok
You can use autodie, Fatal, or Fatal::Exception to get around this. Currently, autodie is not properly treated as a pragma; its lexical effects aren't taken into account.
CONFIGURATION
This Policy is not configurable except for the standard options.
AUTHOR
Andrew Moore <amoore@mooresystems.com>
ACKNOWLEDGMENTS
This policy module is based heavily on policies written by Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>.
COPYRIGHT
Copyright (c) 2007-2010 Andrew Moore. 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.