if you dump what Net::FTP returns here it is:
{ $fh = $self->_do_ftp_cmd("retr", $file); die("File unavailable: $file") unless $fh; } use Data::Dumper; warn sprintf "FILEHANDLE EXISTS AND HERE IT IS: %s", Dumper($fh); #### OUTPUT Warning: FILEHANDLE EXISTS AND HERE IT IS $VAR1 = bless( \*Symbol::GEN16, 'Net: +:FTP::I' );
And in looking at Net::FTP::I it is fairly apparent that he is making use of the hash reference of this generated symbol:
package Net::FTP::I; use vars qw(@ISA $buf $VERSION); use Carp; require Net::FTP::dataconn; @ISA = qw(Net::FTP::dataconn); $VERSION = "1.08"; # $Id: //depot/libnet/Net/FTP/I.pm#6$ sub read { my $data = shift; local *buf = \$_[0]; shift; my $size = shift || croak 'read($buf,$size,[$timeout])'; my $timeout = @_ ? shift : $data->timeout; $data->can_read($timeout) or croak "Timeout"; my($b,$n,$l); ## *** the line below implies use of the hash part of ## *** the type glob my $blksize = ${*$data}{'net_ftp_blksize'}; # $blksize = $size if $size > $blksize;
But my question is: how could I redo my original call to Dumper() so that it dumped every aspect of the typeglob that $fh referred to?
In reply to Recursive Data::Dumper use needed by princepawn
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |