Class: OpenStruct
- Inherits:
-
Object
- Object
- OpenStruct
- Defined in:
- lib/backport_dig/ostruct.rb
Instance Method Summary collapse
-
#dig(name, *names) ⇒ Object
Retrieves the value object corresponding to the each
nameobjects repeatedly.
Instance Method Details
#dig(name, *names) ⇒ Object
Retrieves the value object corresponding to the each name objects repeatedly.
address = OpenStruct.new('city' => "Anytown NC", 'zip' => 12345)
person = OpenStruct.new('name' => 'John Smith', 'address' => address)
person.dig(:address, 'zip') # => 12345
person.dig(:business_address, 'zip') # => nil
13 14 15 16 17 18 19 20 |
# File 'lib/backport_dig/ostruct.rb', line 13 def dig(name, *names) begin name = name.to_sym rescue NoMethodError return end @table.dig(name, *names) end |