OXIESEC PANEL
- Current Dir:
/
/
usr
/
share
/
perl
/
5.26.1
/
Tie
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/09/2024 07:13:15 AM
rwxr-xr-x
📄
Array.pm
7.15 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
File.pm
75.63 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
Handle.pm
4.1 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
Hash.pm
1.99 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
Memoize.pm
4.15 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
RefHash.pm
6.09 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
Scalar.pm
4.07 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
StdHandle.pm
1.37 KB
05/23/2023 05:17:19 PM
rw-r--r--
📄
SubstrHash.pm
5.28 KB
05/23/2023 05:17:19 PM
rw-r--r--
Editing: StdHandle.pm
Close
package Tie::StdHandle; use strict; use Tie::Handle; use vars qw(@ISA $VERSION); @ISA = 'Tie::Handle'; $VERSION = '4.4'; =head1 NAME Tie::StdHandle - base class definitions for tied handles =head1 SYNOPSIS package NewHandle; require Tie::Handle; @ISA = qw(Tie::Handle); sub READ { ... } # Provide a needed method sub TIEHANDLE { ... } # Overrides inherited method package main; tie *FH, 'NewHandle'; =head1 DESCRIPTION The B<Tie::StdHandle> package provide most methods for file handles described in L<perltie> (the exceptions are C<UNTIE> and C<DESTROY>). It causes tied file handles to behave exactly like standard file handles and allow for selective overwriting of methods. =cut sub TIEHANDLE { my $class = shift; my $fh = \do { local *HANDLE}; bless $fh,$class; $fh->OPEN(@_) if (@_); return $fh; } sub EOF { eof($_[0]) } sub TELL { tell($_[0]) } sub FILENO { fileno($_[0]) } sub SEEK { seek($_[0],$_[1],$_[2]) } sub CLOSE { close($_[0]) } sub BINMODE { binmode($_[0]) } sub OPEN { $_[0]->CLOSE if defined($_[0]->FILENO); @_ == 2 ? open($_[0], $_[1]) : open($_[0], $_[1], $_[2]); } sub READ { &CORE::read(shift, \shift, @_) } sub READLINE { my $fh = $_[0]; <$fh> } sub GETC { getc($_[0]) } sub WRITE { my $fh = $_[0]; local $\; # don't print any line terminator print $fh substr($_[1], $_[3], $_[2]); } 1;