blob: 65be7dc068ce191b5083033852d898d86103a65d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
module Enumerable
unless method_defined?(:flat_map)
def flat_map
return to_enum(:flat_map) unless block_given?
r = []
each do |*args|
result = yield(*args)
result.respond_to?(:to_ary) ? r.concat(result) : r.push(result)
end
r
end
end
end
|