End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
instance method
Enumerable#to_h
enum.to_h(*args) → hash
enum.to_h(*args) {...} → hash
enum.c
View on GitHub ↗
static VALUE
enum_to_h(int argc, VALUE *argv, VALUE obj)
{
rb_block_call_func *iter = rb_block_given_p() ? enum_to_h_ii : enum_to_h_i;
return enum_hashify(obj, argc, argv, iter);
}
Returns the result of interpreting enum as a list of [key, value] pairs.
Example
%i[hello world].each_with_index.to_h # => {:hello => 0, :world => 1}
If a block is given, the results of the block on each element of the enum will be used as pairs.
Example
(1..5).to_h {|x| [x, x ** 2]} #=> {1=>1, 2=>4, 3=>9, 4=>16, 5=>25}