APIdock / Ruby
/
method

dig

ruby latest stable - Class: Array
dig(*args)
public

Extracts the nested value specified by the sequence of idx objects by calling dig at each step, returning nil if any intermediate step is nil.

a = [[1, [2, 3]]]
a.dig (0, 1, 1) #=> 3
a.dig (1, 2, 3) #=> nil
a.dig (0, 0, 0) #=> TypeError: Integer does not have #dig method
[42, {foo: :bar}].dig (1, :foo) #=> :bar
VALUE
rb_ary_dig(int argc, VALUE *argv, VALUE self)
{
 rb_check_arity(argc, 1, UNLIMITED_ARGUMENTS);
 self = rb_ary_at(self, *argv);
 if (!--argc) return self;
 ++argv;
 return rb_obj_dig(argc, argv, self, Qnil);
}

AltStyle によって変換されたページ (->オリジナル) /