SelectSaver - save and restore selected file handle
my $saver = new SelectSaver(FILEHANDLE);
# previous handle is selected
my $saver = new SelectSaver;
# new handle may be selected, or not
# previous handle is selected
A C<SelectSaver> object contains a reference to the file handle that
was selected when it was created. If its C<new> method gets an extra
parameter, then that parameter is selected; otherwise, the selected
file handle remains unchanged.
When a C<SelectSaver> is destroyed, it re-selects the file handle
that was selected when it was created.
@_ >= 1 && @_ <= 2 or croak
'usage: new SelectSaver [FILEHANDLE]';
my $self = bless \
$fh, $_[0];
select qualify
($_[1], caller) if @_ > 1;