Extracts the nested value specified by the sequence of index or
header objects by calling dig at
each step, returning nil if any
intermediate step is nil.
# File lib/csv/table.rb, line 383
def dig(index_or_header, *index_or_headers)
value = self[index_or_header]
if value.nil?
nil
elsif index_or_headers.empty?
value
else
unless value.respond_to?(:dig)
raise TypeError, "#{value.class} does not have \#dig method"
end
value.dig(*index_or_headers)
end
end