Tie::Handle
See the current Perl documentation for Tie::Handle.
Here is our local, out-dated (pre-5.6) version:
Tie::Handle - base class definitions for tied handles
package NewHandle; require Tie::Handle; @ISA = (Tie::Handle); sub READ { ... } # Provide a needed method sub TIEHANDLE { ... } # Overrides inherited method package main;
This module provides some skeletal methods for handle-tying classes. See perltie for a list of the functions required in tying a handle to a package. The basic Tie::Handle package provides a
new
method, as well as methodsTIESCALAR
,FETCH
andSTORE
. Thenew
method is provided as a means of grandfathering, for classes that forget to provide their ownTIESCALAR
method.For developers wishing to write their own tied-handle classes, the methods are summarized below. The perltie section not only documents these, but has sample code as well:
- TIEHANDLE classname, LIST
-
The method invoked by the command
tie *glob, classname
. Associates a new glob instance with the specified class.LIST
would represent additional arguments (along the lines of AnyDBM_File and compatriots) needed to complete the association. - WRITE this, scalar, length, offset
- Write length bytes of data from scalar starting at offset.
- PRINT this, LIST
- Print the values in LIST
- PRINTF this, format, LIST
- Print the values in LIST using format
- READ this, scalar, length, offset
- Read length bytes of data into scalar starting at offset.
- READLINE this
- Read a single line
- GETC this
- Get a single character
- DESTROY this
- Free the storage associated with the tied handle referenced by this. This is rarely needed, as Perl manages its memory quite well. But the option exists, should a class wish to perform specific actions upon the destruction of an instance.
MORE INFORMATION
The perltie section contains an example of tying handles.