209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
|
# File 'lib/ordered_hash.rb', line 209
def to_hash(depth = false)
raise "Dont know how to convert array to hash (not all elements ar 2-dim arrays)" unless
can_be_a_hash?
new_hash = OrderedHash.new
order = []
self.each {|key,value|
order << key
if depth and value.class == Array and value.can_be_a_hash? then
new_hash.store(key, value.to_hash(true),false)
else
new_hash.store(key, value,false)
end
}
new_hash.order = order
new_hash
end
|