Method: Hash#to_ostruct
- Defined in:
- lib/shenanigans/hash/to_ostruct.rb
#to_ostruct ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/shenanigans/hash/to_ostruct.rb', line 24 def to_ostruct arr = map do |k, v| case v when Hash [k, v.to_ostruct] when Array [k, v.map { |el| Hash === el ? el.to_ostruct : el }] else [k, v] end end OpenStruct.new(arr) end |