From b645030efc22e13c2498a1522083634ab91b2de1 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Wed, 12 May 2010 16:51:27 +0000 Subject: move tlperl to tlperl.old git-svn-id: svn://tug.org/texlive/trunk@18209 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/tlperl/lib/IO/File.pm | 208 ------------------------------------- 1 file changed, 208 deletions(-) delete mode 100644 Master/tlpkg/tlperl/lib/IO/File.pm (limited to 'Master/tlpkg/tlperl/lib/IO/File.pm') diff --git a/Master/tlpkg/tlperl/lib/IO/File.pm b/Master/tlpkg/tlperl/lib/IO/File.pm deleted file mode 100644 index e7cdbbed6d7..00000000000 --- a/Master/tlpkg/tlperl/lib/IO/File.pm +++ /dev/null @@ -1,208 +0,0 @@ -# - -package IO::File; - -=head1 NAME - -IO::File - supply object methods for filehandles - -=head1 SYNOPSIS - - use IO::File; - - $fh = new IO::File; - if ($fh->open("< file")) { - print <$fh>; - $fh->close; - } - - $fh = new IO::File "> file"; - if (defined $fh) { - print $fh "bar\n"; - $fh->close; - } - - $fh = new IO::File "file", "r"; - if (defined $fh) { - print <$fh>; - undef $fh; # automatically closes the file - } - - $fh = new IO::File "file", O_WRONLY|O_APPEND; - if (defined $fh) { - print $fh "corge\n"; - - $pos = $fh->getpos; - $fh->setpos($pos); - - undef $fh; # automatically closes the file - } - - autoflush STDOUT 1; - -=head1 DESCRIPTION - -C inherits from C and C. It extends -these classes with methods that are specific to file handles. - -=head1 CONSTRUCTOR - -=over 4 - -=item new ( FILENAME [,MODE [,PERMS]] ) - -Creates an C. If it receives any parameters, they are passed to -the method C; if the open fails, the object is destroyed. Otherwise, -it is returned to the caller. - -=item new_tmpfile - -Creates an C opened for read/write on a newly created temporary -file. On systems where this is possible, the temporary file is anonymous -(i.e. it is unlinked after creation, but held open). If the temporary -file cannot be created or opened, the C object is destroyed. -Otherwise, it is returned to the caller. - -=back - -=head1 METHODS - -=over 4 - -=item open( FILENAME [,MODE [,PERMS]] ) - -=item open( FILENAME, IOLAYERS ) - -C accepts one, two or three parameters. With one parameter, -it is just a front end for the built-in C function. With two or three -parameters, the first parameter is a filename that may include -whitespace or other special characters, and the second parameter is -the open mode, optionally followed by a file permission value. - -If C receives a Perl mode string ("E", "+E", etc.) -or an ANSI C fopen() mode string ("w", "r+", etc.), it uses the basic -Perl C operator (but protects any special characters). - -If C is given a numeric mode, it passes that mode -and the optional permissions value to the Perl C operator. -The permissions default to 0666. - -If C is given a mode that includes the C<:> character, -it passes all the three arguments to the three-argument C operator. - -For convenience, C exports the O_XXX constants from the -Fcntl module, if this module is available. - -=item binmode( [LAYER] ) - -C sets C on the underlying C object, as documented -in C. - -C accepts one optional parameter, which is the layer to be -passed on to the C call. - -=back - -=head1 NOTE - -Some operating systems may perform C or C -on a directory without errors. This behavior is not portable and not -suggested for use. Using C and C or C are -suggested instead. - -=head1 SEE ALSO - -L, -L, -L, -L, -L - -=head1 HISTORY - -Derived from FileHandle.pm by Graham Barr EFE. - -=cut - -use 5.006_001; -use strict; -our($VERSION, @EXPORT, @EXPORT_OK, @ISA); -use Carp; -use Symbol; -use SelectSaver; -use IO::Seekable; -use File::Spec; - -require Exporter; - -@ISA = qw(IO::Handle IO::Seekable Exporter); - -$VERSION = "1.13"; - -@EXPORT = @IO::Seekable::EXPORT; - -eval { - # Make all Fcntl O_XXX constants available for importing - require Fcntl; - my @O = grep /^O_/, @Fcntl::EXPORT; - Fcntl->import(@O); # first we import what we want to export - push(@EXPORT, @O); -}; - -################################################ -## Constructor -## - -sub new { - my $type = shift; - my $class = ref($type) || $type || "IO::File"; - @_ >= 0 && @_ <= 3 - or croak "usage: new $class [FILENAME [,MODE [,PERMS]]]"; - my $fh = $class->SUPER::new(); - if (@_) { - $fh->open(@_) - or return undef; - } - $fh; -} - -################################################ -## Open -## - -sub open { - @_ >= 2 && @_ <= 4 or croak 'usage: $fh->open(FILENAME [,MODE [,PERMS]])'; - my ($fh, $file) = @_; - if (@_ > 2) { - my ($mode, $perms) = @_[2, 3]; - if ($mode =~ /^\d+$/) { - defined $perms or $perms = 0666; - return sysopen($fh, $file, $mode, $perms); - } elsif ($mode =~ /:/) { - return open($fh, $mode, $file) if @_ == 3; - croak 'usage: $fh->open(FILENAME, IOLAYERS)'; - } - if (defined($file) && length($file) - && ! File::Spec->file_name_is_absolute($file)) - { - $file = File::Spec->rel2abs($file); - } - $file = IO::Handle::_open_mode_string($mode) . " $file\0"; - } - open($fh, $file); -} - -################################################ -## Binmode -## - -sub binmode { - ( @_ == 1 or @_ == 2 ) or croak 'usage $fh->binmode([LAYER])'; - - my($fh, $layer) = @_; - - return binmode $$fh unless $layer; - return binmode $$fh, $layer; -} - -1; -- cgit v1.2.3