HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //proc/self/root/lib/postgresql/14/lib/pgxs/src/test/perl/SimpleTee.pm
# Copyright (c) 2021, PostgreSQL Global Development Group

# 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;
use warnings;

sub TIEHANDLE
{
	my $self = shift;
	return 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;