instance method
each_with_object
Ruby on Rails 3.2.22.5
Since v2.2.3 Last seen in v3.2.22.5Signature
each_with_object(memo)
Iterates over a collection, passing the current element and the memo to the block. Handy for building up hashes or reducing collections down to one object. Examples:
%w(foo bar).each_with_object({}) { |str, hsh| hsh[str] = str.upcase } # => {'foo' => 'FOO', 'bar' => 'BAR'}
Note that you can’t use immutable objects like numbers, true or false as the memo. You would think the following returns 120, but since the memo is never changed, it does not.
(1..5).each_with_object(1) { |value, memo| memo *= value } # => 1
Parameters
-
memoreq
Source
# File activesupport/lib/active_support/core_ext/enumerable.rb, line 79
def each_with_object(memo)
return to_enum :each_with_object, memo unless block_given?
each do |element|
yield element, memo
end
memo
end
Defined in activesupport/lib/active_support/core_ext/enumerable.rb line 79
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in Enumerable