1# 2 3package IO; 4 5use XSLoader (); 6use Carp; 7use strict; 8use warnings; 9 10our $VERSION = "1.25_06"; 11XSLoader::load 'IO', $VERSION; 12 13sub import { 14 shift; 15 16 warnings::warnif('deprecated', qq{Parameterless "use IO" deprecated}) 17 if @_ == 0 ; 18 19 my @l = @_ ? @_ : qw(Handle Seekable File Pipe Socket Dir); 20 21 eval join("", map { "require IO::" . (/(\w+)/)[0] . ";\n" } @l) 22 or croak $@; 23} 24 251; 26 27__END__ 28 29=head1 NAME 30 31IO - load various IO modules 32 33=head1 SYNOPSIS 34 35 use IO qw(Handle File); # loads IO modules, here IO::Handle, IO::File 36 use IO; # DEPRECATED 37 38=head1 DESCRIPTION 39 40C<IO> provides a simple mechanism to load several of the IO modules 41in one go. The IO modules belonging to the core are: 42 43 IO::Handle 44 IO::Seekable 45 IO::File 46 IO::Pipe 47 IO::Socket 48 IO::Dir 49 IO::Select 50 IO::Poll 51 52Some other IO modules don't belong to the perl core but can be loaded 53as well if they have been installed from CPAN. You can discover which 54ones exist by searching for "^IO::" on http://search.cpan.org. 55 56For more information on any of these modules, please see its respective 57documentation. 58 59=head1 DEPRECATED 60 61 use IO; # loads all the modules listed below 62 63The loaded modules are IO::Handle, IO::Seekable, IO::File, IO::Pipe, 64IO::Socket, IO::Dir. You should instead explicitly import the IO 65modules you want. 66 67=cut 68 69