Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Accessing HASH pushed into @array ('strict refs' in use error)

by Athanasius (Archbishop)
on Jan 08, 2014 at 10:45 UTC ( #1069765=note: print w/replies, xml ) Need Help??


in reply to Accessing HASH pushed into @array ('strict refs' in use error)

Hello sbrothy, and welcome to the Monastery!

To expand on dave_the_m’s answer:

Step 4 of the Basic debugging checklist says: “Dump arrays, hashes and arbitrarily complex data structures.” Using the core Data::Dumper module to print out the contents of @array, we see that after the first push the array contains 4 elements, which Data::Dumper names $VAR1 to $VAR4:

$VAR1 = 'CLIENT_PATH'; $VAR2 = 'PATH: 0'; $VAR3 = 'CLIENT_NICK'; $VAR4 = 'NICK: 0';

That’s because push puts its argument(s) (following the destination array) into list context, and a hash in list context returns a list of the form (key-x, val-x, key-y, val-y, ...). But when a reference to the hash is pushed instead, the result of the first push is:

$VAR1 = { 'CLIENT_PATH' => 'PATH: 0', 'CLIENT_NICK' => 'NICK: 0' };

— which shows that only one element ($VAR1) has been pushed onto the array; and this time its referent retains its identity as a hash.

Some useful reading: perlreftut and perldsc.

Hope that helps,

Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,

Replies are listed 'Best First'.
Re^2: Accessing HASH pushed into @array ('strict refs' in use error)
by sbrothy (Acolyte) on Jan 09, 2014 at 17:41 UTC
    Yes. I've taken Data::Dumper to my chest. Thanks for the tip. I'm still looking for a decent TRACE module. Something along the lines og ASSERT and TRACE from Visual C++. I'm trying out Smart::Comments but I dunno...

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (8)
As of 2022-10-04 12:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My preferred way to holiday/vacation is:











    Results (17 votes). Check out past polls.

    Notices?