diff options
| author | ksss <[email protected]> | 2014-03-23 00:38:35 +0900 |
|---|---|---|
| committer | ksss <[email protected]> | 2014-03-23 13:31:26 +0900 |
| commit | 5e4626c9ba43027ba7bc6d6f6bbee7016512d0e6 (patch) | |
| tree | 108001c945558671b5aab16fbc0f09ef8c3b2d37 /mrblib/hash.rb | |
| parent | ff6666632f96fe837cc36b13afac8f2ab147d9d7 (diff) | |
| download | mruby-5e4626c9ba43027ba7bc6d6f6bbee7016512d0e6.tar.gz mruby-5e4626c9ba43027ba7bc6d6f6bbee7016512d0e6.zip | |
Hash#{select,select!} support return Enumerator
if non block given
Diffstat (limited to 'mrblib/hash.rb')
| -rw-r--r-- | mrblib/hash.rb | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/mrblib/hash.rb b/mrblib/hash.rb index cd6ba8935..9dcfb7e94 100644 --- a/mrblib/hash.rb +++ b/mrblib/hash.rb @@ -162,6 +162,8 @@ class Hash # 1.9 Hash#select! returns Hash; ISO says nothing. def select!(&b) + return to_enum :select! unless block_given? + keys = [] self.each_key{|k| v = self[k] @@ -178,6 +180,8 @@ class Hash # 1.9 Hash#select returns Hash; ISO says nothing. def select(&b) + return to_enum :select unless block_given? + h = {} self.each_key{|k| v = self[k] |
