DOKK / manpages / debian 12 / libio-file-withfilename-perl / IO::File::WithFilename.3pm.en
IO::File::WithFilename(3pm) User Contributed Perl Documentation IO::File::WithFilename(3pm)

IO::File::WithFilename - filehandles that know their origin

    use IO::File::WithFilename;
    my $fh = IO::File::WithFilename->new('../movies/kin-dza-dza.ogg', O_RDONLY);
    print $fh->filename, "\n";
    print "$fh\n"; # same as above

This module does everything that "IO::File" does, but implements "filename" method, that "File::Temp" objects have. It lets you write the code that is ignorant of what classes of objects it works with.

If you want to check if it is safe to call "filename" method, you are recommended to call "can" method rather than to check an object's inheritance:

    print $obj->filename, "\n" if eval { $obj->can('filename') };

EXPORT

Same as "IO::File", i. e. "O_XXX" constants from the "Fcntl" module (if this module is available).

IO::File, File::Temp

Ivan Fomichev, <ifomichev@cpan.org>

Copyright (C) 2010 by Ivan Fomichev

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.1 or, at your option, any later version of Perl 5 you may have available.

2023-02-05 perl v5.36.0