Personal tools
Skip to content. | Skip to navigation
This toolkit primarily provides modules for performing both traditional and object-oriented I/O) on things *other* than normal filehandles; in particular, IO::Scalar, IO::ScalarArray, and IO::Lines. In the more-traditional IO::Handle front, we have IO::AtomicFile, which may be used to painlessly create files that are updated atomically. And in the "this-may-prove-useful" corner, we have IO::Wrap, whose exported wraphandle() function will clothe anything that's not a blessed object in an IO::Handle-like wrapper... so you can just use OO syntax and stop worrying about whether your function's caller handed you a string, a globref, or a FileHandle.
This is the Perl POSIX compliant stty.
IO::Tee objects can be used to multiplex input and output in two different ways. The first way is to multiplex output to zero or more output handles. The IO::Tee constructor, given a list of output handles, returns a tied handle that can be written to. When written to (using print or printf), the IO::Tee object multiplexes the output to the list of handles originally passed to the constructor. As a shortcut, you can also directly pass a string or an array reference to the constructor, in which case IO::File::new is called for you with the specified argument or arguments.
This package allows you to tie separate variables into a combined whole, using ties and other magic. This can be very useful when, say, you want a unified output from various different things that return data in different ways (STDIN/ERR, scalars, handles, etc).
IO::Tty and IO::Pty provide an interface to pseudo tty's.