Sha256: 9768892efeefc47c0c7c1a65f34050b3c1809099b574a0faef42a2d7244de1ef
Contents?: true
Size: 862 Bytes
Versions: 26
Compression:
Stored size: 862 Bytes
Contents
module Enumerable # Produces a hash from an Enumerable with index for keys. # # enu = 'a'..'b' # enu.to_h #=> { 0=>'a', 1=>'b' } # # If a block is passed, the hash values will be set by # calling the block with the enumerated element and it's # counter. # # enu = 'a'..'b' # enu.to_h{ |e,i| e } #=> { 0=>'a', 1=>'b' } # # See also #graph. # def to_h( &blk ) h = {} if block_given? each_with_index{ |e,i| h[i] = blk.call(e,i) } else each_with_index{ |e,i| h[i] = e } end h end end # _____ _ # |_ _|__ ___| |_ # | |/ _ \/ __| __| # | | __/\__ \ |_ # |_|\___||___/\__| # =begin test require 'test/unit' class TCEnumerable < Test::Unit::TestCase def test_to_h a = [:a,:b,:c] assert_equal( { 0=>:a, 1=>:b, 2=>:c }, a.to_h ) end end =end
Version data entries
26 entries across 26 versions & 1 rubygems