Subject: iterating a complex data structure
	Date: sab 21 dic 13 04:07:29 +0100

Quoting Mark K. (lists / ruby-forum.com):

> Hi, I'm new to the list and new to ruby.  I have an data like so:
> stuff = [  { name: foo, tags: { one: blah, two: blah } }, etc ]
> 
> I'm iterating like so:
> stuff.each do |h|
>         name = h[:name]
>         tags = h[:tags]
> ....
> end
> 
> Is there a way to get the name value and the tags hash straight out of
> the .each that is less awkward than what I have?

If, instead of an array of hashes, you go for a hash of hashes, where
the key of the main hash is your name, like this:

stuff={foo:{one:blah,two:blah},bar:{one:bleh,two:bleh}...}

then you can iterate it like this

stuff.each do |key,value|

where key is your name and value is your tags hash. Of course, you
won't be able to have two elements with the same name (which you could
do in your example). 

Carlo

-- 
  *         Se la Strada e la sua Virtu' non fossero state messe da parte,
* K * Carlo E. Prelz - fluido / fluido.as             che bisogno ci sarebbe
  *               di parlare tanto di amore e di rettitudine? (Chuang-Tzu)