/IO-Tee

Read-only release history for IO-Tee

Primary LanguagePerl

NAME
    IO::Tee - Multiplex output to multiple output handles

SYNOPSIS
        use IO::Tee;

        $tee = IO::Tee->new($handle1, $handle2);
        print $tee "foo", "bar";

DESCRIPTION
    The `IO::Tee' constructor, given a list of output handles, returns a
    tied handle that can be written to but not read from. When written to
    (using print or printf), it 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.

    The `IO::Tee' class supports certain `IO::Handle' and `IO::File' methods
    related to output. In particular, the following methods will iterate
    themselves over all handles associated with the `IO::Tee' object, and
    return TRUE indicating success if and only if all associated handles
    returned TRUE indicating success:

    close
    truncate
    write
    syswrite
    format_write
    formline
    fcntl
    ioctl
    flush
    clearerr
    seek
    Additionally, the following methods can be used to set (but not
    retrieve) the current values of output-related state variables on all
    associated handles:

    autoflush
    output_field_separator
    output_record_separator
    format_page_number
    format_lines_per_page
    format_lines_left
    format_name
    format_top_name
    format_line_break_characters
    format_formfeed
EXAMPLE
        use IO::Tee;
        use IO::File;

        my $tee = new IO::Tee(\*STDOUT,
            new IO::File(">tt1.out"), ">tt2.out");

        print join(' ', $tee->handles), "\n";

        for (1..10) { print $tee $_, "\n" }
        for (1..10) { $tee->print($_, "\n") }
        $tee->flush;

AUTHOR
    Chung-chieh Shan, ken@digitas.harvard.edu

COPYRIGHT
    Copyright (c) 1998-2001 Chung-chieh Shan. All rights reserved. This
    program is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself.

SEE ALSO
    the perlfunc manpage, the IO::Handle manpage, the IO::File manpage.