method
dig
Ruby latest stable (v2_5_5)
-
0 notes -
Class: OpenStruct
- 1_8_6_287
- 1_8_7_72
- 1_8_7_330
- 1_9_1_378
- 1_9_2_180
- 1_9_3_125
- 1_9_3_392
- 2_1_10
- 2_2_9
- 2_4_6 (0)
- 2_5_5 (0)
- 2_6_3 (0)
- What's this?
dig(name, *names)
public
Extracts the nested value specified by the sequence of name objects by calling dig at each step, returning nil if any intermediate step is nil.
require "ostruct" 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 data = OpenStruct.new(:array => [1, [2, 3]]) data.dig(:array, 1, 0) # => 2 data.dig(:array, 0, 0) # TypeError: Integer does not have #dig method