diff options
| author | Jack Nagel | 2013-06-07 22:27:29 -0500 |
|---|---|---|
| committer | Jack Nagel | 2013-06-08 12:23:14 -0500 |
| commit | a41d7942a04392de7ebd8b55855e9a19fd653bc2 (patch) | |
| tree | e2ec5f48e8dcbe63aa57afed9e192ec43c9643b1 /Library | |
| parent | 48f7e862f8ee3df46948e259fce6fcb6a5a2479a (diff) | |
| download | homebrew-a41d7942a04392de7ebd8b55855e9a19fd653bc2.tar.bz2 | |
Add Enumerable#group_by
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/extend/enumerable.rb | 7 | ||||
| -rw-r--r-- | Library/Homebrew/global.rb | 1 | ||||
| -rw-r--r-- | Library/Homebrew/test/testing_env.rb | 1 |
3 files changed, 9 insertions, 0 deletions
diff --git a/Library/Homebrew/extend/enumerable.rb b/Library/Homebrew/extend/enumerable.rb new file mode 100644 index 000000000..f6765bbae --- /dev/null +++ b/Library/Homebrew/extend/enumerable.rb @@ -0,0 +1,7 @@ +module Enumerable + def group_by + inject({}) do |h, e| + h.fetch(yield(e)) { |k| h[k] = [] } << e; h + end + end unless method_defined?(:group_by) +end diff --git a/Library/Homebrew/global.rb b/Library/Homebrew/global.rb index edfce9ac4..cb6e36e07 100644 --- a/Library/Homebrew/global.rb +++ b/Library/Homebrew/global.rb @@ -4,6 +4,7 @@ require 'extend/pathname' require 'extend/ARGV' require 'extend/string' require 'extend/symbol' +require 'extend/enumerable' require 'utils' require 'exceptions' require 'set' diff --git a/Library/Homebrew/test/testing_env.rb b/Library/Homebrew/test/testing_env.rb index 8e93884eb..4e071c000 100644 --- a/Library/Homebrew/test/testing_env.rb +++ b/Library/Homebrew/test/testing_env.rb @@ -12,6 +12,7 @@ require 'extend/fileutils' require 'extend/pathname' require 'extend/string' require 'extend/symbol' +require 'extend/enumerable' require 'exceptions' require 'utils' require 'rbconfig' |
