


Fatal(3p)        Perl Programmers Reference Guide       Fatal(3p)


NAME
       Fatal - replace functions with equivalents which succeed
       or die

SYNOPSIS
           use Fatal qw(open close);

           sub juggle { . . . }
           import Fatal 'juggle';


DESCRIPTION
       "Fatal" provides a way to conveniently replace functions
       which normally return a false value when they fail with
       equivalents which raise exceptions if they are not suc-
       cessful.  This lets you use these functions without having
       to test their return values explicitly on each call.
       Exceptions can be caught using "eval{}".  See the perlfunc
       manpage and the perlvar manpage for details.

       The do-or-die equivalents are set up simply by calling
       Fatal's "import" routine, passing it the names of the
       functions to be replaced.  You may wrap both user-defined
       functions and overridable CORE operators (except "exec",
       "system" which cannot be expressed via prototypes) in this
       way.

       If the symbol ":void" appears in the import list, then
       functions named later in that import list raise an excep-
       tion only when these are called in void context--that is,
       when their return values are ignored.  For example

               use Fatal qw/:void open close/;

               # properly checked, so no exception raised on error
               if(open(FH, "< /bogotic") {
                       warn "bogo file, dude: $!";
               }

               # not checked, so error raises an exception
               close FH;


AUTHOR
       Lionel.Cons@cern.ch

       prototype updates by Ilya Zakharevich ilya@math.ohio-
       state.edu









2000-04-06                 perl v5.6.1                          1


