Files
postgresql/src/test/perl/SimpleTee.pm
Alvaro Herrera 7d9a4301c0 perltidy PostgresNode and SimpleTee
Also, mention in README that Perl files should be perltidy'ed.  This
isn't really the best place (since we have Perl files elsewhere in the
tree) and this is already in pgindent's README, but this subdir is
likely to get hacked a whole lot more than the other Perl files, so it
seems okay to spend two lines on this.

Author: Craig Ringer
2016-03-03 13:21:35 -03:00

32 lines
606 B
Perl

# A simple 'tee' implementation, using perl tie.
#
# Whenever you print to the handle, it gets forwarded to a list of
# handles. The list of output filehandles is passed to the constructor.
#
# This is similar to IO::Tee, but only used for output. Only the PRINT
# method is currently implemented; that's all we need. We don't want to
# depend on IO::Tee just for this.
package SimpleTee;
use strict;
sub TIEHANDLE
{
my $self = shift;
bless \@_, $self;
}
sub PRINT
{
my $self = shift;
my $ok = 1;
for my $fh (@$self)
{
print $fh @_ or $ok = 0;
$fh->flush or $ok = 0;
}
return $ok;
}
1;