>>> On Sat, 2002-06-22 at 13:53, Shawn wrote:
>>>> Is there a reason for this, and is there a way I can see what the 
>>>> actuall values are?  The values are passed just fine to the sub routines,
>>>>  I just want my debug log to show that values passed without having to 
>>>> set up a for loop (ie: print %$hash_ref).
>>>>
>>>> TIA,
>>>> Shawn
>>>
>>> probably you are trying to use the hash in scalar context,
>>>
>>> you should be able to se the values like this:
>>>
>>> print "@{ [ values %$hash_ref ] }\n";
>>
>> way Close
>>
>> my %hash = (user => 1,pass => 2,thing => 3,ptr => [qw(4 5)],);
>>
>> my $hash_ref = \%hash;
>>
>> print split(/ /,%$hash_ref ), "\n";
>> print "Not Split: ", %$hash_ref, " :\n";
 >> my @array = %$hash_ref;
>> print "Array Game: @array :\n";
>>
>> print " Player: @{ [  %$hash_ref ] }\n";
>>
>> generates
>>
>> 4/8

>
> This is the number of buckets used over the number of buckets.  Probably
> not terribly useful unless you are optimising hashing algorithms.  In
> this case it shows that perl has done a pretty good job with the hash.


Can you elaborate more on the 'buckets' Paul, or point me to a doc that explains it 
more?  All the hash elements should be (are) filled when I dereferrence the hash in 
PACKAGEB.  So why would I ever see 1/8?

>> Not Split: pass2thing3ptrARRAY(0x6410)user1 :
>> Array Game: pass 2 thing 3 ptr ARRAY(0x6410) user 1 :
>>   Player: pass 2 thing 3 ptr ARRAY(0x6410) user 1

Ok, well, I think I am basically doing this (Not Split)... let me give you a snippet 
(a very basic one anyway):

MAIN script:
use PACKAGEA;
use PACKAGEB;
$A=PACKAGEA->new; # OBJ A gathers all url params
$B=PACKAGEB->new;
print $B->somesub(&make_hash);
print $B->{DEBUG};
exit;

sub make_hash {
  my %hash;
  for('1','2','3','4') {
    $hash{$_}=$A->params($_);
  }
  return(\%hash);
}

PACKAGEB:
....
sub somesub {
  my $self=shift;
  $self->{DEBUG}.="B::somesub called (line # ".__LINE__.")\n";
  $self->{SOMEPARAM}=shift;
  $self->{DEBUG}.="    SOMEPARAM: ".%{$self->{SOMEPARAM}}."\n";
  ...
}
....

The data sets get a bit more complex from here, but that is not an issue for me at 
this point.  I can print out the referenced arrays and strings fine.  It is only the 
hashes that I am having issues with...

Again, TIA,
Shawn


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to