Sha256: ca2870ecd8ac6ae64f9e40222f15247eb13f0a3158a429c614ab717d8e11cc50

Contents?: true

Size: 281 Bytes

Versions: 15

Compression:

Stored size: 281 Bytes

Contents

class Array

  def info_by_rule(info, &rule)
    counts = self.group_by{|x|
      rule.(x)
    }.to_a.map{|x|
      x[1] = info.(x[1])
      x
    }
    Hash[counts]
  end

  def count_by_rule(&rule)
    info_by_rule(->(x){
      x.count
    }){|x|
      rule.(x)
    }
  end

end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
tarvit-helpers-0.0.23 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.22 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.21 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.20 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.19 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.18 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.17 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.16 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.15 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.14 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.13 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.12 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.11 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.10 lib/tarvit-helpers/extensions/counter.rb
tarvit-helpers-0.0.9 lib/tarvit-helpers/extensions/counter.rb