Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re^3: Finding hashes in hashes of hashes

by bobf (Monsignor)
on Dec 28, 2009 at 18:49 UTC ( #814649=note: print w/ replies, xml ) Need Help??


in reply to Re^2: Finding hashes in hashes of hashes
in thread Finding hashes in hashes of hashes

The 'die' would go after the foreach (refer to the pseudocode that I posted). Note the comments below:

sub get_family_member { my @args = @_; my $who = shift @args; # <-- this var is not used my $families = shift @args; foreach my $family (%families) { if ($families->{$family}->{kid} eq "bart") { # <-- are you sure yo +u want to hard-code 'bart'? I think you need $who return $dfamilies->{$family}->{kid}; # <-- typo in hash name last; # <-- this will never be reached since it already returned } } # no matches found: die here }


Comment on Re^3: Finding hashes in hashes of hashes
Download Code
Re^4: Finding hashes in hashes of hashes
by AnomalousMonk (Monsignor) on Dec 28, 2009 at 20:07 UTC

    bobf is quite right: the statements
        my @args = @_;
        my $who = shift @args;
        my $families = shift @args;
    are much better written as
        my ($who, $families) = @_;

    Also,  $families in the above example seems to be a hash reference,
    so use  %$families to dereference.

    Further,
        for my $family (%$families) { ... }
    won't do what you want; use
        for my $family (keys %$families) { ... }
    to iterate over the keys of the referenced hash.

Re^4: Finding hashes in hashes of hashes
by cyphy (Initiate) on Dec 29, 2009 at 14:26 UTC
    Thank you! About the typo and the who.. This is what happens, when you try to change your code to only reflect relevant parts. Next time I'll simply copy it.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://814649]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (8)
As of 2014-07-13 19:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (251 votes), past polls