aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/core_ext/hash/keys.rb
diff options
context:
space:
mode:
authorEileen M. Uchitelle <eileencodes@gmail.com>2015-11-07 11:27:17 -0500
committerEileen M. Uchitelle <eileencodes@gmail.com>2015-11-07 11:27:17 -0500
commit24bddfc542cf218e395029db3ece4502ae79eb3d (patch)
tree0bd1c2e494c2222f5b8f8320844aae15d1c9c0ef /activesupport/lib/active_support/core_ext/hash/keys.rb
parent986f79a446f73c6e093419f751222768e1ccd13c (diff)
parent9addcbb00a77d6fbbb10ac242b8455a28b8f3631 (diff)
downloadrails-24bddfc542cf218e395029db3ece4502ae79eb3d.tar.gz
rails-24bddfc542cf218e395029db3ece4502ae79eb3d.tar.bz2
rails-24bddfc542cf218e395029db3ece4502ae79eb3d.zip
Merge pull request #21806 from kachick/fix-transformer-size
Return a sized Enumerator from Hash#transform_values{!}
Diffstat (limited to 'activesupport/lib/active_support/core_ext/hash/keys.rb')
-rw-r--r--activesupport/lib/active_support/core_ext/hash/keys.rb4
1 files changed, 2 insertions, 2 deletions
diff --git a/activesupport/lib/active_support/core_ext/hash/keys.rb b/activesupport/lib/active_support/core_ext/hash/keys.rb
index 07a282e8b6..8b2366c4b3 100644
--- a/activesupport/lib/active_support/core_ext/hash/keys.rb
+++ b/activesupport/lib/active_support/core_ext/hash/keys.rb
@@ -10,7 +10,7 @@ class Hash
#
# hash.transform_keys.with_index { |k, i| [k, i].join } # => {"name0"=>"Rob", "age1"=>"28"}
def transform_keys
- return enum_for(:transform_keys) unless block_given?
+ return enum_for(:transform_keys) { size } unless block_given?
result = self.class.new
each_key do |key|
result[yield(key)] = self[key]
@@ -21,7 +21,7 @@ class Hash
# Destructively converts all keys using the +block+ operations.
# Same as +transform_keys+ but modifies +self+.
def transform_keys!
- return enum_for(:transform_keys!) unless block_given?
+ return enum_for(:transform_keys!) { size } unless block_given?
keys.each do |key|
self[yield(key)] = delete(key)
end