summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2016-07-27 02:32:04 +0900
committerGitHub <[email protected]>2016-07-27 02:32:04 +0900
commit3757b16dab96c687429a9cec7c2b498218ef0e27 (patch)
tree7dbd1bffc3698e2ead3fda9f1d2435c7f0d97823
parent32ad74f4d129b1c24cc0192014a151511f9a7273 (diff)
parentbef63a4f917903da0d5fdb7a01916313a2a26e7e (diff)
downloadmruby-3757b16dab96c687429a9cec7c2b498218ef0e27.tar.gz
mruby-3757b16dab96c687429a9cec7c2b498218ef0e27.zip
Merge pull request #3184 from ksss/each_char
Support to call without block to String#each_char
-rw-r--r--mrbgems/mruby-string-ext/mrblib/string.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/mrbgems/mruby-string-ext/mrblib/string.rb b/mrbgems/mruby-string-ext/mrblib/string.rb
index fc734b951..7e65eb6b2 100644
--- a/mrbgems/mruby-string-ext/mrblib/string.rb
+++ b/mrbgems/mruby-string-ext/mrblib/string.rb
@@ -362,7 +362,15 @@ class String
self.split('')
end
end
- alias each_char chars
+
+ def each_char(&block)
+ return to_enum :each_char unless block
+
+ split('').map do |i|
+ block.call(i)
+ end
+ self
+ end
def codepoints(&block)
len = self.size