summaryrefslogtreecommitdiff
path: root/ext/IO/IO.pm
diff options
context:
space:
mode:
Diffstat (limited to 'ext/IO/IO.pm')
-rw-r--r--ext/IO/IO.pm31
1 files changed, 23 insertions, 8 deletions
diff --git a/ext/IO/IO.pm b/ext/IO/IO.pm
index 4d4c81ce40..b6ce21686d 100644
--- a/ext/IO/IO.pm
+++ b/ext/IO/IO.pm
@@ -2,6 +2,28 @@
package IO;
+require DynaLoader;
+require Exporter;
+use Carp;
+
+use vars qw(@ISA $VERSION @EXPORT);
+
+@ISA = qw(DynaLoader);
+$VERSION = "1.20";
+bootstrap IO $VERSION;
+
+sub import {
+ shift;
+ my @l = @_ ? @_ : qw(Handle Seekable File Pipe Socket Dir);
+
+ eval join("", map { "require IO::" . (/(\w+)/)[0] . ";\n" } @l)
+ or croak $@;
+}
+
+1;
+
+__END__
+
=head1 NAME
IO - load various IO modules
@@ -20,17 +42,10 @@ Currently this includes:
IO::File
IO::Pipe
IO::Socket
+ IO::Dir
For more information on any of these modules, please see its respective
documentation.
=cut
-use IO::Handle;
-use IO::Seekable;
-use IO::File;
-use IO::Pipe;
-use IO::Socket;
-
-1;
-