Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | # |
2 | ||
3 | package IO; | |
4 | ||
5 | use XSLoader (); | |
6 | use Carp; | |
7 | ||
8 | $VERSION = "1.20"; | |
9 | XSLoader::load 'IO', $VERSION; | |
10 | ||
11 | sub import { | |
12 | shift; | |
13 | my @l = @_ ? @_ : qw(Handle Seekable File Pipe Socket Dir); | |
14 | ||
15 | eval join("", map { "require IO::" . (/(\w+)/)[0] . ";\n" } @l) | |
16 | or croak $@; | |
17 | } | |
18 | ||
19 | 1; | |
20 | ||
21 | __END__ | |
22 | ||
23 | =head1 NAME | |
24 | ||
25 | IO - load various IO modules | |
26 | ||
27 | =head1 SYNOPSIS | |
28 | ||
29 | use IO; | |
30 | ||
31 | =head1 DESCRIPTION | |
32 | ||
33 | C<IO> provides a simple mechanism to load some of the IO modules at one go. | |
34 | Currently this includes: | |
35 | ||
36 | IO::Handle | |
37 | IO::Seekable | |
38 | IO::File | |
39 | IO::Pipe | |
40 | IO::Socket | |
41 | IO::Dir | |
42 | ||
43 | For more information on any of these modules, please see its respective | |
44 | documentation. | |
45 | ||
46 | =cut | |
47 |