Thank you very much for your explanations :) adrien
2010/3/25 Colin Law <[email protected]> > On 25 March 2010 14:47, Adrien Coquio <[email protected]> wrote: > > In fact the previous example doesn't change the value of > > PeopleHelpers::MYCONSTANT > > > > but if I do : > > <% > > joke = PeopleHelpers::MYCONSTANT.dup > > joke[:opt][:title].sub!('a','b') > > #if i debug there, PeopleHelpers::MYCONSTANT = {:opt => {:title => > > bbcdef}} > > %> > > > > the value changed.. why ? > > > > My understanding is that dup makes a copy of the hash contents, but > since the contents are themselves references rather than simple > objects you end up with a new hash containing references to the same > objects, which can then be modified as you have noted (even though > they are notionally constant). > > Colin > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<rubyonrails-talk%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. > > -- COQUIO Adrien [email protected] -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

