Method: Hash#fetch_values

Defined in:
hash.c

#fetch_values(key, ...) ⇒ Array #fetch_values(key, ...) {|key| ... } ⇒ Array

Returns an array containing the values associated with the given keys but also raises KeyError when one of keys can’t be found. Also see Hash#values_at and Hash#fetch.

h = { "cat" => "feline", "dog" => "canine", "cow" => "bovine" }

h.fetch_values("cow", "cat")                   #=> ["bovine", "feline"]
h.fetch_values("cow", "bird")                  # raises KeyError
h.fetch_values("cow", "bird") { |k| k.upcase } #=> ["bovine", "BIRD"]

Overloads:

  • #fetch_values(key, ...) ⇒ Array

    Returns:

  • #fetch_values(key, ...) {|key| ... } ⇒ Array

    Yields:

    Returns:



2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
# File 'hash.c', line 2582

VALUE
rb_hash_fetch_values(int argc, VALUE *argv, VALUE hash)
{
    VALUE result = rb_ary_new2(argc);
    long i;

    for (i=0; i<argc; i++) {
	rb_ary_push(result, rb_hash_fetch(hash, argv[i]));
    }
    return result;
}